Schéma du trait ArmDisarm pour maison connectée

action.devices.traits.ArmDisarm : ce trait permet d'activer et de désactiver des systèmes de sécurité, par exemple.

Pour les appareils avec plusieurs niveaux de sécurité, ces niveaux doivent être signalés avec l' availableArmLevels attribut.

ATTRIBUTS de l'appareil

Les appareils dotés de ce trait peuvent signaler les attributs suivants dans le cadre de l'opération SYNC. Pour en savoir plus sur la gestion des intents SYNC, consultez Exécution des intents.

Attributs Type Description
availableArmLevels Objet

Décrit les niveaux de sécurité compatibles de l'appareil. Si cet attribut n'est pas signalé, l'appareil n'est compatible qu'avec un seul niveau.

levels Array

Obligatoire.

Liste des niveaux de sécurité disponibles compatibles avec l'appareil.

[item, ...] Objet

Niveau de sécurité.

level_name String

Obligatoire.

Nom interne du niveau de sécurité utilisé dans les commandes et les états. Ce nom peut ne pas être convivial et est partagé dans toutes les langues.

level_values Array

Obligatoire.

Contient level_synonym et lang.

[item, ...] Objet

Synonyme de niveau pour une langue donnée. Au moins un élément avec une valeur lang de en est requis pour fournir un remplacement de langue.

level_synonym Array

Obligatoire.

Noms conviviaux pour le niveau dans chaque langue compatible. Le premier élément est traité comme le nom canonique.

[item, ...] String

Nom du synonyme. Au moins un élément avec une valeur lang de en est requis pour fournir un remplacement de langue.

lang String

Obligatoire.

Code de langue pour les synonymes de niveau. Consultez Langues compatibles.

ordered Valeur booléenne

Obligatoire.

Si la valeur est "true", une grammaire supplémentaire pour la logique d'augmentation/de diminution s'applique, dans l'ordre du tableau des niveaux. Par exemple, "Hey Google, augmente mon niveau de sécurité de 1" permet à l'Assistant de déterminer le niveau de sécurité actuel, puis de l'augmenter d'un niveau. Si cette valeur est définie sur "false", la grammaire supplémentaire pour la logique d'augmentation/de diminution n'est pas compatible.

Exemples

Système de sécurité avec deux niveaux d'activation distincts

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

ÉTATS de l'appareil

Les entités dotées de ce trait peuvent signaler les états suivants dans le cadre de l'opération QUERY. Pour en savoir plus sur la gestion des intents QUERY, consultez Exécution des intents.

États Type Description
isArmed Valeur booléenne

Obligatoire.

Indique si l'appareil est actuellement activé.

currentArmLevel String

Obligatoire.

Obligatoire si l'attribut availableArmLevels est spécifié. S'il existe plusieurs niveaux de sécurité, indique le nom du niveau de sécurité actuel.

exitAllowance Entier

Indique le temps, en secondes, dont dispose l'utilisateur pour partir avant que currentArmLevel ne prenne effet.

Exemples

Système de sécurité qui signale un niveau d'activation distinct

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

COMMANDES de l'appareil

.

Les appareils dotés de ce trait peuvent répondre aux commandes suivantes dans le cadre de l'opération EXECUTE. Pour en savoir plus sur la gestion des intents EXECUTE, consultez Exécution des intents.

action.devices.commands.ArmDisarm

Définissez le niveau d'alarme de cet appareil.

Paramètres

La charge utile contient l'un des éléments suivants :

Annuler l'opération d'activation ou de désactivation

Paramètres Type Description
followUpToken String

Jetons fournis par Google pour la réponse de suivi.

arm Valeur booléenne

Obligatoire.

Vrai lorsque la commande consiste à activer. Faux pour désactiver.

cancel Valeur booléenne

Obligatoire.

Vrai lorsque la commande consiste à annuler la valeur arm.

Activez ou désactivez l'appareil, avec un niveau de sécurité facultatif.

Paramètres Type Description
followUpToken String

Jetons fournis par Google pour la réponse de suivi.

arm Valeur booléenne

Obligatoire.

Vrai lorsque la commande consiste à activer. Faux pour désactiver.

armLevel String

Le level_name à activer.

Exemples

Activer le système

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

Définir le système sur le niveau d'activation L1

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

Annuler l'opération d'activation

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

Une erreur s'est produite lors de l'activation ou de la désactivation de l'appareil.

Valeurs acceptées :

alreadyInState
deviceTampered
passphraseIncorrect
pinIncorrect
securityRestriction
tooManyFailedAttempts
userCancelled

ERREURS de l'appareil

Consultez la liste complète des erreurs et des exceptions.