Esquema de características do ArmDisarm Smart Home

action.devices.traits.ArmDisarm: esta característica é compatível com armamento e desligamento, como usados em sistemas de segurança, por exemplo.

Para dispositivos com vários níveis de segurança, esses níveis devem ser informados com o atributo availableArmLevels.

ATRIBUTOS do dispositivo

Os dispositivos com essa característica podem informar os seguintes atributos como parte da operação SYNC. Para saber mais sobre como lidar com intents SYNC, consulte fulfillment de intent.

Atributos Tipo Descrição
availableArmLevels Object

Descreve os níveis de segurança compatíveis com o dispositivo. Se esse atributo não for informado, o dispositivo só é compatível com um nível.

levels Array

Obrigatório.

Lista dos níveis de segurança disponíveis compatíveis com o dispositivo.

[item, ...] Object

Nível de segurança.

level_name String

Obrigatório.

O nome interno do nível de segurança usado em comandos e estados. Este nome pode não ser de fácil uso e é compartilhado em todos os idiomas.

level_values Array

Obrigatório.

Contém level_synonym e lang.

[item, ...] Object

Sinônimo de nível para um determinado idioma.

level_synonym Array

Obrigatório.

Nomes fáceis de usar para o nível em cada idioma compatível. O primeiro item é tratado como o nome canônico.

[item, ...] String

Nome de sinônimo.

lang String

Obrigatório.

Código de idioma para os sinônimos de nível. Consulte Idiomas compatíveis.

ordered Booleano

Obrigatório.

Se definida como verdadeira, a gramática adicional para lógica de aumento/diminuição será aplicada, na ordem da matriz de níveis. Por exemplo, "Ok Google, aumente meu nível de segurança em 1" para que o Assistente determine o nível de segurança atual e aumente esse nível em um. Se esse valor for definido como falso, a gramática adicional para lógica de aumento/diminuição não será compatível.

Exemplos

Sistema de segurança com dois níveis distintos de braço

{
  "availableArmLevels": {
    "levels": [
      {
        "level_name": "L1",
        "level_values": [
          {
            "level_synonym": [
              "Home and Guarding",
              "SL1"
            ],
            "lang": "en"
          },
          {
            "level_synonym": [
              "Zuhause und Bewachen",
              "SL1"
            ],
            "lang": "de"
          }
        ]
      },
      {
        "level_name": "L2",
        "level_values": [
          {
            "level_synonym": [
              "Away and Guarding",
              "SL2"
            ],
            "lang": "en"
          },
          {
            "level_synonym": [
              "Weg und Bewachen",
              "SL2"
            ],
            "lang": "de"
          }
        ]
      }
    ],
    "ordered": true
  }
}

STATES do dispositivo

As entidades com essa característica podem informar os estados a seguir como parte da operação QUERY. Para saber mais sobre como lidar com intents QUERY, consulte fulfillment de intent.

Estados Tipo Descrição
isArmed Booleano

Obrigatório.

Indica se o dispositivo está ligado.

currentArmLevel String

Obrigatório.

Obrigatório se o atributo availableArmLevels for especificado. Se houver vários níveis de segurança, indica o nome do nível de segurança atual.

exitAllowance Número inteiro

Indica o tempo, em segundos, que o usuário precisa sair antes que currentArmLevel entre em vigor.

Exemplos

Sistema de segurança que informa diferentes níveis de braço

{
  "isArmed": true,
  "currentArmLevel": "L1"
}

Dispositivo COMMANDS

Os dispositivos com essa característica podem responder aos comandos a seguir como parte da operação EXECUTE. Para saber mais sobre como lidar com intents EXECUTE, consulte fulfillment de intent.

action.devices.commands.ArmDisarm

Definir o nível de alarme deste dispositivo.

Parâmetros

O payload contém um dos seguintes itens:

Cancelar a operação de ligar ou desligar

Parâmetros Tipo Descrição
followUpToken String

Token fornecido pelo Google para resposta de acompanhamento.

arm Booleano

Obrigatório.

Verdadeiro quando o comando é arm. Falso para desligar.

cancel Booleano

Obrigatório.

Verdadeiro quando o comando é cancelar o valor arm.

Ligar ou desligar o dispositivo, com um nível de segurança opcional.

Parâmetros Tipo Descrição
followUpToken String

Token fornecido pelo Google para resposta de acompanhamento.

arm Booleano

Obrigatório.

Verdadeiro quando o comando é arm. Falso para desligar.

armLevel String

O level_name para o qual ligar.

Exemplos

Ativar o sistema

{
  "command": "action.devices.commands.ArmDisarm",
  "params": {
    "arm": true,
    "followUpToken": "123"
  }
}

Definir o sistema para o nível de braço L1

{
  "command": "action.devices.commands.ArmDisarm",
  "params": {
    "arm": true,
    "armLevel": "L1",
    "followUpToken": "456"
  }
}

Cancelar a operação de ativação

{
  "command": "action.devices.commands.ArmDisarm",
  "params": {
    "arm": true,
    "cancel": true
  }
}

Ocorreu um erro ao ligar ou desligar o dispositivo.

Os valores suportados são:

alreadyInState
deviceTampered
passphraseIncorrect
pinIncorrect
securityRestriction
tooManyFailedAttempts
userCancelled

Dispositivo ERRORS

Veja a lista completa de erros e exceções.