Esquema de traços de preenchimento de casas inteligentes

action.devices.traits.Fill: essa característica se aplica a dispositivos que permitem o preenchimento, como uma banheira.

ATRIBUTOS DO dispositivo

Dispositivos com essa característica podem relatar o seguinte atributos como parte da operação SYNC. Para saber mais sobre como lidar com intents SYNC, consulte Fulfillment da intent.

Atributos Tipo Descrição
availableFillLevels Object

Descreve os 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 entre 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.

level_synonym Array

Obrigatório.

É sinônimo do nível. A primeira string nessa lista é usada como o nome canônico do nível no idioma em questão.

[item, ...] String

Nome do sinônimo.

lang String

Obrigatório.

Código do idioma (ISO 639-1). Consulte os idiomas compatíveis.

ordered Booleano

Obrigatório.

Se for "true", o dispositivo vai processar a gramática extra para a lógica de aumento ou diminuição, conforme representado pela matriz levels (por exemplo, meio nível).

supportsFillPercent Booleano

Padrão: false.

Se verdadeiro, aceita comandos para ajustar o nível como uma porcentagem.

Exemplos

Dispositivo com recursos básicos de enchimento ou drenagem que não são compatíveis com níveis de preenchimento 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
  }
}

STATES do dispositivo

Entidades com essa característica podem relatar o seguinte como parte da operação QUERY. Para saber mais sobre como lidar com intents QUERY, consulte Fulfillment da intent.

Estados Tipo Descrição
isFilled Booleano

Obrigatório.

Verdadeiro se o dispositivo estiver cheio em qualquer nível. Falso se o dispositivo estiver totalmente drenado.

currentFillLevel String

Obrigatório se o atributo availableFillLevels estiver definido. Indica o level_name atual do atributo availableFillLevels em que o dispositivo é preenchido.

currentFillPercent Número

Obrigatório se o atributo supportsFillPercent estiver definido. Indica a porcentagem do nível de preenchimento atual.

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 ao seguinte como parte da operação EXECUTE. Para saber mais sobre como lidar com intents EXECUTE, consulte Fulfillment da intent.

action.devices.commands.Fill

Encha ou drene o dispositivo.

Parâmetros

Parâmetros Tipo Descrição
fill Booleano

Obrigatório.

Verdadeiro para preencher, falso para drenar.

fillLevel String

Indica o level_name do atributo availableFillLevels a ser definido. Se não for especificado, preencha o nível padrão.

fillPercent Número

Indica a porcentagem do nível solicitado.

Exemplos

Encha a banheira.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

Drene 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 (o atributo ordered precisa ser true).

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

ERROS no dispositivo

Veja a lista completa erros e exceções.