Esquema de traço de preenchimento de casa inteligente
action.devices.traits.Fill
: esse traço se aplica a dispositivos que podem ser enchidos, como uma banheira.
ATRIBUTOS do dispositivo
Dispositivos com essa característica podem informar os seguintes atributos como parte da operação SYNC
. Para saber mais sobre como processar intents SYNC
, consulte Lógica de fulfillment de intents.
Atributos | Tipo | Descrição |
---|---|---|
availableFillLevels |
Object |
Descreve diferentes níveis de preenchimento do dispositivo. |
levels |
Array |
Obrigatório. Lista de nomes de níveis e sinônimos específicos do idioma. |
[item, ...] |
Object |
Nome do nível e sinônimos específicos do idioma. |
level_name |
String |
Obrigatório. Nome interno do nível. Isso pode não ser fácil de usar e será compartilhado em todos os idiomas. |
level_values |
Array |
Obrigatório. Sinônimos do nível em cada idioma aceito. |
[item, ...] |
Object |
Sinônimos do nível em um determinado idioma. É necessário pelo menos um item com um valor |
level_synonym |
Array |
Obrigatório. Sinônimo do nível. A primeira string dessa lista é usada como o nome canônico do nível nesse idioma. |
[item, ...] |
String |
Nome do sinônimo. É necessário pelo menos um item com um valor |
lang |
String |
Obrigatório. Código de idioma (ISO 639-1). Confira os idiomas aceitos. |
ordered |
Booleano |
Obrigatório. Se for "true", o dispositivo vai processar gramática adicional para lógica de aumento ou diminuição, conforme representado pela matriz |
supportsFillPercent |
Booleano |
Padrão: Se for verdadeiro, aceita comandos para ajustar o nível a uma porcentagem. |
Exemplos
Dispositivo com recursos básicos de enchimento ou drenagem que não aceita níveis de enchimento discretos.
{}
Dispositivo compatível com níveis de preenchimento discretos.
{ "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 } }
ESTADOS DO DISPOSITIVO
As entidades com essa característica podem informar os seguintes estados como parte da operação QUERY
. Para saber mais sobre como processar intents QUERY
, consulte Lógica de fulfillment de intents.
Estados | Tipo | Descrição |
---|---|---|
isFilled |
Booleano |
Obrigatório. Verdadeiro se o dispositivo estiver cheio em qualquer nível. False se o dispositivo estiver completamente descarregado. |
currentFillLevel |
String |
Obrigatório se o atributo |
currentFillPercent |
Número |
Obrigatório se o atributo |
Exemplos
A banheira está cheia?
{ "isFilled": true }
A banheira está cheia? (com níveis).
{ "isFilled": true, "currentFillLevel": "half_level" }
COMANDOS do dispositivo
Dispositivos com essa característica podem responder aos seguintes
comandos como parte da operação EXECUTE
. Para saber mais sobre como processar intents EXECUTE
, consulte Lógica de fulfillment de intents.
action.devices.commands.Fill
Encha ou esvazie o dispositivo.
Parâmetros
Parâmetros | Tipo | Descrição |
---|---|---|
fill |
Booleano |
Obrigatório. True para preencher, false para esvaziar. |
fillLevel |
String |
Indica o |
fillPercent |
Número |
Indica a porcentagem do nível solicitado. |
Exemplos
Encha a banheira.
{ "command": "action.devices.commands.Fill", "params": { "fill": true } }
Esvazie a banheira.
{ "command": "action.devices.commands.Fill", "params": { "fill": false } }
Encha a banheira até a metade.
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_level" } }
Aumente o nível de enchimento da banheira em um (exige que o atributo ordered
seja true
).
{ "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "full_level" } }