Esquema de traço de preenchimento de casa inteligente
action.devices.traits.Fill: esse traço se aplica a dispositivos que podem ser preenchidos, 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 Fulfillment de intent.
| 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 compatível. |
[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 verdadeiro, 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
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 Execução 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 O valor precisa estar entre |
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 Fulfillment de intent.
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. O valor precisa estar entre |
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"
}
}