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 |
supportsFillPercent |
Booléen |
(Par défaut : 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 |
currentFillPercent |
Number |
Obligatoire si l'attribut |
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 |
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" } }