Esquema del rasgo Smart Home ArmDisarm

action.devices.traits.ArmDisarm: Este rasgo admite la activación y desactivación, como se usa, por ejemplo, en los sistemas de seguridad.

En el caso de los dispositivos con varios niveles de seguridad, estos se deben informar con el atributo availableArmLevels.

Atributos del dispositivo

Los dispositivos con este rasgo pueden informar los siguientes atributos como parte de la operación SYNC. Para obtener más información sobre cómo controlar intents de SYNC, consulta Entrega de intents.

Atributos Tipo Descripción
availableArmLevels Objeto

Describe los niveles de seguridad admitidos del dispositivo. Si no se informa este atributo, el dispositivo solo admite un nivel.

levels Matriz

Obligatorio.

Es la lista de los niveles de seguridad disponibles que admite el dispositivo.

[item, ...] Objeto

Es el nivel de seguridad.

level_name String

Obligatorio.

Es el nombre interno del nivel de seguridad que se usa en los comandos y estados. Este nombre puede no ser fácil de usar y se comparte en todos los idiomas.

level_values Matriz

Obligatorio.

Contiene level_synonym y lang.

[item, ...] Objeto

Es el sinónimo del nivel para un idioma determinado. Se requiere al menos un elemento con un valor de lang de en para proporcionar un resguardo de idioma.

level_synonym Matriz

Obligatorio.

Nombres fáciles de usar para el nivel en cada idioma admitido. El primer elemento se considera el nombre canónico.

[item, ...] String

Nombre del sinónimo. Se requiere al menos un elemento con un valor de lang de en para proporcionar un resguardo de idioma.

lang String

Obligatorio.

Es el código de idioma de los sinónimos del nivel. Consulta Idiomas admitidos.

ordered Booleano

Obligatorio.

Si se establece en verdadero, se aplica una gramática adicional para la lógica de aumento o disminución, en el orden del array de niveles. Por ejemplo, "Hey Google, aumenta mi nivel de seguridad en 1" hace que Asistente determine el nivel de seguridad actual y, luego, lo aumente en uno. Si este valor se establece como falso, no se admite la gramática adicional para la lógica de aumento o disminución.

Ejemplos

Sistema de seguridad con dos niveles de activación distintos

{
  "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
  }
}

ESTADOS del dispositivo

Las entidades con este rasgo pueden informar los siguientes estados como parte de la operación QUERY. Para obtener más información sobre cómo controlar intents de QUERY, consulta Entrega de intents.

Estados Tipo Descripción
isArmed Booleano

Obligatorio.

Indica si el dispositivo está armado actualmente.

currentArmLevel String

Obligatorio.

Obligatorio si se especifica el atributo availableArmLevels. Si existen varios niveles de seguridad, indica el nombre del nivel de seguridad actual.

exitAllowance Número entero

Indica el tiempo, en segundos, que el usuario debe esperar antes de que se aplique currentArmLevel.

Ejemplos

Sistema de seguridad que informa un nivel de activación distinto

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

COMANDOS del dispositivo

Los dispositivos con este rasgo pueden responder a los siguientes comandos como parte de la operación EXECUTE. Para obtener más información sobre cómo controlar intents de EXECUTE, consulta Entrega de intents.

action.devices.commands.ArmDisarm

Establece el nivel de alarma de este dispositivo.

Parámetros

La carga útil contiene uno de los siguientes elementos:

Cancela la operación de armado o desarmado

Parámetros Tipo Descripción
followUpToken String

Es el token proporcionado por Google para la respuesta de seguimiento.

arm Booleano

Obligatorio.

Es verdadero cuando el comando es para armar. Es falso para desactivar.

cancel Booleano

Obligatorio.

Es verdadero cuando el comando cancela el valor de arm.

Armar o desarmar el dispositivo, con un nivel de seguridad opcional

Parámetros Tipo Descripción
followUpToken String

Es el token proporcionado por Google para la respuesta de seguimiento.

arm Booleano

Obligatorio.

Es verdadero cuando el comando es para armar. Es falso para desactivar.

armLevel String

Es el level_name al que se activará.

Ejemplos

Cómo armar el sistema

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

Cómo establecer el sistema en el nivel de armado L1

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

Cómo cancelar la operación de armado

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

Se produjo un error al armar o desarmar el dispositivo.

Valores admitidos:

alreadyInState
deviceTampered
passphraseIncorrect
pinIncorrect
securityRestriction
tooManyFailedAttempts
userCancelled

ERRORES del dispositivo

Consulta la lista completa de errores y excepciones.