스마트 홈 모드 특성 스키마

action.devices.traits.Modes: 이 트레잇은 기기에 사용 가능한 모든 모드와 모드별 설정을 다룹니다.

이 특성은 임의의 수의 'n-way' 모드가 있는 모든 기기에 속합니다. 각 모드의 모드와 설정은 각 기기 또는 기기 유형에 고유하고 고유합니다. 각 모드에는 가능한 설정이 여러 개 있지만 한 번에 하나만 선택할 수 있습니다. 건조기는 '섬세', '일반', '고중' 모드를 동시에 선택할 수 없습니다. 간단히 켜거나 끌 수 있는 설정은 Toggles 특성에 속합니다.

예를 들어 세탁기에는 세탁량과 온도를 설정할 수 있습니다. 이 둘은 서로 독립적이므로 둘 다 모드이지만 각각은 한 번에 하나의 상태에만 있을 수 있습니다. 사용자는 세탁기 온도를 차갑게 설정과 같은 명령어를 사용하여 명시적으로 온도와 같은 모드를 설정할 수 있습니다.

일부 모드는 '정렬됨'이며 위/아래, 증가/감소 설명으로 조정할 수도 있습니다. 예를 들어 부하 크기 (소형, 중형, 대형)와 온도는 명확하게 정렬되어 있지만 (온도는 다른 기기에서처럼 숫자 목표가 설정된 실제 온도 조절기가 아님) 부하 유형(섬세함, 보통, 양모 등)은 그렇지 않을 수 있습니다.

이 특성은 사용자가 설정할 수 있는 하나 이상의 개별 모드에 적용됩니다. 일반적으로 이러한 모드는 다른 기기 동작에서 연결 해제된 기능에 사용해야 합니다. 기기 자체 켜기 또는 끄기와 같은 연결된 동작은 더 구체적인 특성 (예: 특성 TemperatureSettingthermostatMode)을 사용해야 합니다.

기기 ATTRIBUTES

이 특성이 있는 기기는 SYNC 작업의 일부로 다음 속성을 보고할 수 있습니다. SYNC 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

속성 유형 설명
availableModes 배열

필수사항.

사용 가능한 모드 목록입니다.

[item, ...] 객체

사용 가능한 모드.

name String

필수사항.

명령어와 상태에서 사용될 모드의 내부 이름입니다. 사용자 친화적이지 않을 수 있으며 모든 언어에서 공유됩니다.

name_values 배열

필수사항.

지원되는 각 언어로 된 모드의 동의어입니다.

[item, ...] 객체

지정된 언어에서 모드의 동의어입니다.

name_synonym 배열

필수사항.

모드의 동의어입니다. 이 목록의 첫 번째 문자열은 해당 언어 수준의 표준 이름으로 사용됩니다.

[item, ...] String

동의어 이름입니다.

lang String

필수사항.

언어 코드 (ISO 639-1)입니다. 지원되는 언어를 참고하세요.

settings 배열

필수사항.

이 모드에 지원되는 설정입니다.

[item, ...] 객체

지원되는 설정입니다.

항목이 2개 이상 필요합니다.

setting_name String

필수사항.

명령어 및 상태에서 사용되는 모드 설정의 내부 이름입니다. 사용자 친화적이지 않을 수 있으며 모든 언어에서 공유됩니다.

setting_values 배열

필수사항.

지원되는 각 언어로 설정의 동의어입니다.

[item, ...] 객체

지정된 언어에서 설정의 동의어입니다.

setting_synonym 배열

필수사항.

설정의 동의어입니다. 이 목록의 첫 번째 문자열은 해당 언어 수준의 표준 이름으로 사용됩니다.

[item, ...] String

동의어 이름입니다.

lang String

필수사항.

언어 코드 (ISO 639-1)입니다. 지원되는 언어를 참고하세요.

ordered Boolean

(기본값: false)

true로 설정하면 증가/감소 로직의 추가 문법이 설정 배열의 순서 (증가)로 적용됩니다.

commandOnlyModes Boolean

(기본값: false)

기기가 단방향 (true) 통신 사용 또는 양방향 (false) 통신 사용을 지원하는지를 나타냅니다. 기기가 이 특성의 QUERY 인텐트 또는 보고서 상태에 응답할 수 없는 경우 이 속성을 true로 설정합니다.

queryOnlyModes Boolean

(기본값: false)

기기에서 쿼리 전용 실행을 지원하는 경우 필수입니다. 이 속성은 기기를 상태 정보만 쿼리할 수 있고 제어할 수 없는지를 나타냅니다.

예시

다중 모드 및 설정이 있는 기기.

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "Load",
            "Size",
            "Load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Small",
                "Half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Medium",
                "Normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "Large",
                "Full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "Temperature",
            "Temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Hot",
                "White"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Warm",
                "Color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "Cold",
                "Delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

명령어 전용 모드가 있는 기기.

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "Light",
            "Lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Day",
                "Bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Night",
                "Dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "Reading",
                "Ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

기기 상태

이 특성을 가진 항목은 QUERY 작업의 일부로 다음 상태를 보고할 수 있습니다. QUERY 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

상태 유형 설명
currentModeSettings 객체

필수사항.

기기의 name 모드를 키로, 현재 setting_name를 값으로 사용하여 키-값을 페어링합니다.

<string> String

현재 setting_name.

예시

기기가 어떤 모드에 있나요?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

기기 명령어

이 특성이 있는 기기는 EXECUTE 작업의 일부로 다음 명령어에 응답할 수 있습니다. EXECUTE 인텐트 처리에 관한 자세한 내용은 인텐트 처리를 참고하세요.

action.devices.commands.SetModes

모드 설정을 업데이트합니다.

매개변수

매개변수 유형 설명
updateModeSettings 객체

필수사항.

기기의 name 모드를 키로, 새 setting_name를 값으로 사용하여 키-값을 페어링합니다.

<string> String

setting_name

예시

고부하로 설정합니다.

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

샘플 발화

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

기기 오류

오류 및 예외의 전체 목록을 참조하세요.