Схема характеристик режимов умного дома
action.devices.traits.Modes
— эта черта охватывает все доступные режимы и настройки для конкретного режима для устройства.
Эта черта принадлежит любым устройствам с произвольным количеством «n-way» режимов, в которых режимы и настройки для каждого режима произвольны и уникальны для каждого устройства или типа устройства. Каждый режим имеет несколько возможных настроек, но одновременно можно выбрать только одну; сушилка не может одновременно находиться в «деликатном», «нормальном» и «тяжелом режиме». Параметр, который можно просто включить или выключить, относится к свойству Toggles .
Например, стиральная машина может иметь настройки для размера загрузки и температуры. Оба они будут режимами, потому что они независимы друг от друга, но каждый из них может находиться только в одном состоянии в каждый момент времени. Пользователь может явно установить режим, такой как температура, с помощью такой команды, как Установить температуру стиральной машины на холодную.
Некоторые режимы «упорядочены» и также могут быть скорректированы с помощью слов вверх/вниз, увеличения/уменьшения. Например, размер загрузки (маленький, средний, большой) и температура четко упорядочены (обратите внимание, что температура не является фактическим термостатом с числовым значением, как на других устройствах), но тип загрузки (деликатное, нормальное, шерсть и т. д.) может не быть.
Эта черта охватывает один или несколько отдельных режимов, которые могут устанавливать пользователи. Как правило, эти режимы следует использовать для функций, не связанных с другим поведением устройства. Связанное поведение, такое как включение или выключение самого устройства, должно использовать более конкретные трейты (например, thermostatMode
в трейте TemperatureSetting ).
АТРИБУТЫ устройства
Устройства с этой чертой могут сообщать о следующих атрибутах как часть операции SYNC
. Дополнительные сведения об обработке намерений SYNC
см. в разделе Выполнение намерений .
Атрибуты | Тип | Описание |
---|---|---|
availableModes | Множество | Необходимый. Список доступных режимов. |
[ item, ... ] | Объект | Доступный режим. |
name | Нить | Необходимый. Внутреннее имя режима, которое будет использоваться в командах и состояниях. Это может быть неудобным для пользователя и будет общим для всех языков. |
name_values | Множество | Необходимый. Синонимы режима на всех поддерживаемых языках. |
[ item, ... ] | Объект | Синонимы режима в данном языке. |
name_synonym | Множество | Необходимый. Синонимы режима. Первая строка в этом списке используется как каноническое имя уровня на этом языке. |
[ item, ... ] | Нить | Синоним имени. |
lang | Нить | Необходимый. Код языка (ISO 639-1). См. поддерживаемые языки . |
settings | Множество | Необходимый. Поддерживаемые настройки для этого режима. |
[ item, ... ] | Объект | Поддерживаемая настройка. Требуется минимум 2 предмета. |
setting_name | Нить | Необходимый. Внутреннее имя настройки режима, которое будет использоваться в командах и состояниях. Это может быть неудобным для пользователя и будет общим для всех языков. |
setting_values | Множество | Необходимый. Синонимы настройки на каждом поддерживаемом языке. |
[ item, ... ] | Объект | Синонимы настройки на данном языке. |
setting_synonym | Множество | Необходимый. Синонимы настройки. Первая строка в этом списке используется как каноническое имя уровня на этом языке. |
[ item, ... ] | Нить | Синоним имени. |
lang | Нить | Необходимый. Код языка (ISO 639-1). См. поддерживаемые языки . |
ordered | логический | (По умолчанию: Если установлено значение true, будет применяться дополнительная грамматика для логики увеличения/уменьшения в порядке (возрастании) массива настроек. |
commandOnlyModes | логический | (По умолчанию: Указывает, поддерживает ли устройство одностороннюю (правда) или двустороннюю (ложь) связь. Установите для этого атрибута значение true, если устройство не может ответить на намерение QUERY или отчет о состоянии для этой характеристики. |
queryOnlyModes | логический | (По умолчанию: Требуется, если устройство поддерживает выполнение только запросов. Этот атрибут указывает, можно ли запрашивать только информацию о состоянии устройства и нельзя ли им управлять. |
Примеры
Устройство с несколькими режимами и настройками.
{ "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 | Объект | Необходимый. Пара "ключ-значение" с |
<string> | Нить | Текущее |
Примеры
В каком режиме находится устройство?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
КОМАНДЫ устройства
Устройства с этой чертой могут отвечать на следующие команды как часть операции EXECUTE
. Дополнительные сведения об обработке намерений EXECUTE
см. в разделе Выполнение намерений .
action.devices.commands.SetModes
Настройки режима обновления.
Параметры
Параметры | Тип | Описание |
---|---|---|
updateModeSettings | Объект | Необходимый. Пара "ключ-значение" с |
<string> | Нить | Новое |
Примеры
Установите большую нагрузку.
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
Примеры высказываний
де-DE
- Stelle
den Staubsauger aufRuhemodus
en-US
- set
the vacuum toenergy saver mode
эс-эс
- pon
la lavadora en modofrío
а как
- mets
l'aspirateur ensilencieux
привет-IN
वैक्यूम परकार्पेट मोड लगाएं
это-ИТ
- imposta
l'aspirapolvere susilenzioso
ja-JP
掃除機 を静音 モードに設定して
ко-КР
세탁기 세탁량 많음 으로 설정해
пт-BR
- acionar a função
autolimpeza doaspirador - ligar o modo de
aquecimento