Схема заполнения умного дома
action.devices.traits.Fill
— эта черта применяется к устройствам, поддерживающим наполнение, например к ванне.
АТРИБУТЫ устройства
Устройства с этой чертой могут сообщать о следующих атрибутах как часть операции SYNC
. Дополнительные сведения об обработке намерений SYNC
см. в разделе Выполнение намерений .
Атрибуты | Тип | Описание |
---|---|---|
availableFillLevels | Объект | Описаны различные уровни заполнения устройства. |
levels | Множество | Необходимый. Список имен уровней и синонимов для конкретных языков. |
[ item, ... ] | Объект | Имя уровня и его языковые синонимы. |
level_name | Нить | Необходимый. Внутреннее имя уровня. Это может быть неудобным для пользователя и будет общим для всех языков. |
level_values | Множество | Необходимый. Синонимы уровня на каждом поддерживаемом языке. |
[ item, ... ] | Объект | Синонимы уровня в данном языке. |
level_synonym | Множество | Необходимый. Синоним уровня. Первая строка в этом списке используется как каноническое имя уровня на этом языке. |
[ item, ... ] | Нить | Синоним имени. |
lang | Нить | Необходимый. Код языка (ISO 639-1). См. поддерживаемые языки . |
ordered | логический | Необходимый. Если значение равно true, устройство обрабатывает дополнительную грамматику для логики увеличения или уменьшения, представленную массивом |
supportsFillPercent | логический | (По умолчанию: Если true, примите команды для настройки уровня в процентах. |
Примеры
Устройство с базовыми возможностями наполнения или слива, не поддерживающее дискретные уровни наполнения.
{}
Устройство, поддерживающее дискретные уровни заполнения.
{ "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 | логический | Необходимый. Истинно, если устройство заполнено до любого уровня. False, если устройство полностью разряжено. |
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" } }