Schéma Smart Home Fill Trait

action.devices.traits.Fill : cette caractéristique s'applique aux appareils pouvant être remplis, comme une baignoire.

Attributs d'appareil

Les appareils dotés de cette caractéristique peuvent signaler les attributs suivants dans le cadre de l'opération SYNC. Pour en savoir plus sur la gestion des intents SYNC, consultez la section Traitement des intents.

Attributs Type Description
availableFillLevels Objet

Décrit les différents niveaux de remplissage de l'appareil.

levels Array

Obligatoire.

Liste des noms de niveau et des synonymes spécifiques à une langue.

[item, ...] Objet

Nom du niveau et synonymes spécifiques à la langue.

level_name String

Obligatoire.

Nom interne du niveau. Elle peut être non conviviale et sera partagée dans toutes les langues.

level_values Array

Obligatoire.

Synonymes du niveau dans chaque langue disponible.

[item, ...] Objet

Synonymes du niveau dans une langue donnée.

level_synonym Array

Obligatoire.

Synonyme du niveau. La première chaîne de cette liste est utilisée comme nom canonique du niveau dans cette langue.

[item, ...] String

Nom du synonyme.

lang String

Obligatoire.

Code de langue (ISO 639-1). Consultez la liste des langues acceptées.

ordered Booléen

Obligatoire.

Si la valeur est "true", l'appareil gère une grammaire supplémentaire pour la logique d'augmentation ou de réduction, comme représenté par le tableau levels (par exemple, demi-niveau).

supportsFillPercent Booléen

(Par défaut : false)

Si la valeur est "true", acceptez les commandes permettant d'ajuster le niveau à un pourcentage.

Exemples

Appareil doté de fonctionnalités de remplissage ou de drainage de base non compatibles avec les niveaux de remplissage distincts

{}

Appareil compatible avec les niveaux de remplissage distincts.

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

Device STATES

Les entités dotées de cette caractéristique peuvent signaler les états suivants dans le cadre de l'opération QUERY. Pour en savoir plus sur la gestion des intents QUERY, consultez la section Traitement des intents.

États Type Description
isFilled Booléen

Obligatoire.

"True" si l'appareil est rempli à n'importe quel niveau. "False" si l'appareil est complètement drainé.

currentFillLevel String

Obligatoire si l'attribut availableFillLevels est défini. Indique la valeur level_name actuelle de l'attribut availableFillLevels correspondant au remplissage de l'appareil.

currentFillPercent Number

Obligatoire si l'attribut supportsFillPercent est défini. Indique le pourcentage de niveau de remplissage actuel.

Exemples

La baignoire est-elle remplie ?

{
  "isFilled": true
}

La baignoire est-elle remplie ? (avec niveaux).

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

COMMANDS d'appareil

Les appareils dotés de cette caractéristique 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 la section Traitement des intents.

action.devices.commands.Fill

Remplissez ou videz l'appareil.

Paramètres

Paramètres Type Description
fill Booléen

Obligatoire.

Vrai pour le remplissage, faux pour le drainage.

fillLevel String

Indique la valeur level_name de l'attribut availableFillLevels à définir. Si aucune valeur n'est spécifiée, remplir le champ au niveau par défaut.

fillPercent Number

Indique le pourcentage de niveau demandé.

Exemples

Remplissez la baignoire.

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

Videz la baignoire.

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

Remplissez la baignoire à moitié.

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

Augmentez le niveau de remplissage de la baignoire de un (l'attribut ordered doit être défini sur true).

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

ERREURS sur l'appareil

Consultez la liste complète des erreurs et exceptions.