Схема заполнения умного дома
action.devices.traits.Fill
— эта черта применяется к устройствам, поддерживающим наполнение, например ванне.
АТРИБУТЫ устройства
Устройства с этой характеристикой могут сообщать следующие атрибуты в рамках операции SYNC
. Дополнительные сведения об обработке намерений SYNC
см. в разделе Выполнение намерений .
Атрибуты | Тип | Описание |
---|---|---|
availableFillLevels | Объект | Описаны разные уровни наполнения устройства. |
levels | Множество | Необходимый. Список названий уровней и синонимов для конкретного языка. |
[ item, ... ] | Объект | Имя уровня и его синонимы для конкретного языка. |
level_name | Нить | Необходимый. Внутреннее имя уровня. Это может быть неудобно для пользователя и будет использоваться на всех языках. |
level_values | Множество | Необходимый. Синонимы уровня на каждом поддерживаемом языке. |
[ item, ... ] | Объект | Синонимы уровня в данном языке. |
level_synonym | Множество | Необходимый. Синоним уровня. Первая строка в этом списке используется как каноническое имя уровня на этом языке. |
[ item, ... ] | Нить | Название-синоним. |
lang | Нить | Необходимый. Код языка (ISO 639-1). См. поддерживаемые языки . |
ordered | логическое значение | Необходимый. Если это правда, устройство обрабатывает дополнительную грамматику для логики увеличения или уменьшения, представленной массивом |
supportsFillPercent | логическое значение | (По умолчанию: Если это правда, примите команды для корректировки уровня в процентах. |
Примеры
Устройство с базовыми возможностями заполнения или слива, которое не поддерживает дискретные уровни заполнения.
{}
Устройство, поддерживающее дискретные уровни заполнения.
{ "availableFillLevels": { "levels": [ { "level_name": "half_level", "level_values": [ { "level_synonym": [ "Half", "Half way", "One half" ], "lang": "en" } ] }, { "level_name": "full_level", "level_values": [ { "level_synonym": [ "Full", "All the way", "Complete" ], "lang": "en" } ] } ], "ordered": true } }
СОСТОЯНИЯ устройства
Сущности с этим признаком могут сообщать о следующих состояниях как часть операции QUERY
. Дополнительные сведения об обработке намерений QUERY
см. в разделе Выполнение намерений .
Штаты | Тип | Описание |
---|---|---|
isFilled | логическое значение | Необходимый. Истинно, если устройство заполнено до любого уровня. Ложь, если устройство полностью опорожнено. |
currentFillLevel | Нить | Требуется, если установлен атрибут |
currentFillPercent | Число | Требуется, если установлен атрибут |
Примеры
Ванна заполнена?
{ "isFilled": true }
Ванна заполнена? (с уровнями).
{ "isFilled": true, "currentFillLevel": "half_level" }
КОМАНДЫ устройства
Устройства с этой особенностью могут реагировать на следующие команды в рамках операции EXECUTE
. Дополнительные сведения об обработке намерений EXECUTE
см. в разделе Выполнение намерения .
action.devices.commands.Fill
Заполните или слейте воду из устройства.
Параметры
Параметры | Тип | Описание |
---|---|---|
fill | логическое значение | Необходимый. True для заполнения, false для слива. |
fillLevel | Нить | Указывает |
fillPercent | Число | Указывает процент запрошенного уровня. |
Примеры
Наполните ванну.
{ "command": "action.devices.commands.Fill", "params": { "fill": true } }
Слейте воду из ванны.
{ "command": "action.devices.commands.Fill", "params": { "fill": false } }
Наполните ванну наполовину.
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_level" } }
Увеличьте уровень наполнения ванны на единицу (требуется, чтобы атрибут ordered
имел значение true
).
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "full_level" } }