Schéma de trait des modes pour la maison connectée
action.devices.traits.Modes
: cette caractéristique couvre tous les modes disponibles et les paramètres spécifiques à un mode pour un appareil.
Cette caractéristique appartient à tous les appareils dotés d'un nombre arbitraire de modes "n-way" dans lesquels les modes et les paramètres de chaque mode sont arbitraires et propres à chaque appareil ou type d'appareil. Chaque mode comporte plusieurs paramètres possibles, mais un seul peut être sélectionné à la fois. Par exemple, un sèche-linge ne peut pas être en mode "délicat", "normal" et "résistant" en même temps. Un paramètre qui peut simplement être activé ou désactivé appartient au trait Toggles.
Par exemple, une machine à laver peut avoir des paramètres pour la taille de la charge et la température. Il s'agit de modes, car ils sont indépendants les uns des autres, mais chacun ne peut être que dans un seul état à la fois. L'utilisateur peut définir un mode tel que la température de manière explicite avec une commande comme Règle la température du lave-linge sur froid.
Certains modes sont "ordonnés" et peuvent également être ajustés avec les expressions "plus haut/plus bas" ou "augmenter/diminuer". Par exemple, la taille de la charge (petite, moyenne, grande) et la température sont clairement ordonnées (notez que la température n'est pas un thermostat réel avec une cible numérique, comme sur d'autres appareils), mais le type de charge (délicat, normal, laine, etc.) peut ne pas l'être.
Ce trait couvre un ou plusieurs modes individuels que les utilisateurs peuvent définir. En général, ces modes doivent être utilisés pour les fonctionnalités qui ne sont pas liées au comportement d'autres appareils. Les comportements associés, tels que l'activation ou la désactivation de l'appareil lui-même, doivent utiliser des traits plus spécifiques (par exemple, thermostatMode
dans le trait TemperatureSetting).
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 Fulfillment d'intent.
Attributs | Type | Description |
---|---|---|
availableModes |
Array |
Obligatoire. Liste des modes disponibles. |
[item, ...] |
Objet |
Mode Disponible. |
name |
String |
Obligatoire. Nom interne du mode, qui sera utilisé dans les commandes et les états. Cela peut être peu pratique pour les utilisateurs et sera partagé dans toutes les langues. |
name_values |
Array |
Obligatoire. Synonymes du mode dans chaque langue disponible. |
[item, ...] |
Objet |
Synonymes du mode dans une langue donnée. Au moins un élément avec une valeur |
name_synonym |
Array |
Obligatoire. Synonymes du mode. La première chaîne de cette liste est utilisée comme nom canonique du niveau dans cette langue. |
[item, ...] |
String |
Nom du synonyme. Au moins un élément avec une valeur |
lang |
String |
Obligatoire. Code de langue (ISO 639-1). Consultez la liste des langues disponibles. |
settings |
Array |
Obligatoire. Paramètres compatibles avec ce mode. |
[item, ...] |
Objet |
Paramètre compatible. Au moins deux éléments sont requis. |
setting_name |
String |
Obligatoire. Nom interne du paramètre de mode, qui sera utilisé dans les commandes et les états. Cela peut être peu pratique pour les utilisateurs et sera partagé dans toutes les langues. |
setting_values |
Array |
Obligatoire. Synonymes du paramètre dans chaque langue acceptée. |
[item, ...] |
Objet |
Synonymes du paramètre dans une langue donnée. |
setting_synonym |
Array |
Obligatoire. Synonymes du paramètre. 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 disponibles. |
ordered |
Valeur booléenne |
(Par défaut : Si la valeur est définie sur "true", une grammaire supplémentaire pour la logique d'augmentation/diminution s'appliquera, dans l'ordre (croissant) du tableau des paramètres. |
commandOnlyModes |
Valeur booléenne |
(Par défaut : Indique si l'appareil est compatible avec la communication unidirectionnelle (true) ou bidirectionnelle (false). Définissez cet attribut sur "true" si l'appareil ne peut pas répondre à une intention QUERY ni à un rapport d'état pour ce trait. |
queryOnlyModes |
Valeur booléenne |
(Par défaut : Obligatoire si l'appareil est compatible avec l'exécution en mode requête uniquement. Cet attribut indique si l'état de l'appareil peut uniquement être interrogé et non contrôlé. |
Exemples
Appareil avec plusieurs modes et paramètres.
{ "availableModes": [ { "name": "load_mode", "name_values": [ { "name_synonym": [ "Load", "Size", "Load size" ], "lang": "en" } ], "settings": [ { "setting_name": "small_load", "setting_values": [ { "setting_synonym": [ "Small", "Half" ], "lang": "en" } ] }, { "setting_name": "medium_load", "setting_values": [ { "setting_synonym": [ "Medium", "Normal" ], "lang": "en" } ] }, { "setting_name": "large_load", "setting_values": [ { "setting_synonym": [ "Large", "Full" ], "lang": "en" } ] } ], "ordered": true }, { "name": "temp_mode", "name_values": [ { "name_synonym": [ "Temperature", "Temp" ], "lang": "en" } ], "settings": [ { "setting_name": "hot_temp", "setting_values": [ { "setting_synonym": [ "Hot", "White" ], "lang": "en" } ] }, { "setting_name": "warm_temp", "setting_values": [ { "setting_synonym": [ "Warm", "Color" ], "lang": "en" } ] }, { "setting_name": "cold_temp", "setting_values": [ { "setting_synonym": [ "Cold", "Delicate" ], "lang": "en" } ] } ], "ordered": false } ] }
Appareil avec des modes de commande uniquement.
{ "availableModes": [ { "name": "light_mode", "name_values": [ { "name_synonym": [ "Light", "Lighting" ], "lang": "en" } ], "settings": [ { "setting_name": "day_light", "setting_values": [ { "setting_synonym": [ "Day", "Bright" ], "lang": "en" } ] }, { "setting_name": "night_light", "setting_values": [ { "setting_synonym": [ "Night", "Dark" ], "lang": "en" } ] }, { "setting_name": "reading_light", "setting_values": [ { "setting_synonym": [ "Reading", "Ambiant" ], "lang": "en" } ] } ], "ordered": false } ], "commandOnlyModes": true, "queryOnlyModes": false }
ÉTATS des appareils
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 Fulfillment d'intent.
États | Type | Description |
---|---|---|
currentModeSettings |
Objet |
Obligatoire. Paire clé/valeur avec le mode |
<string> |
String |
|
Exemples
Dans quel mode l'appareil se trouve-t-il ?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
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 Fulfillment d'intent.
action.devices.commands.SetModes
Modifiez les paramètres du mode.
Paramètres
Paramètres | Type | Description |
---|---|---|
updateModeSettings |
Objet |
Obligatoire. Paire clé/valeur avec le mode |
<string> |
String |
Nouveau |
Exemples
Définissez la charge sur "Élevée".
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
Exemples d'énoncés
de-DE
- Stelle den Staubsauger auf Ruhemodus
en-US
- set the vacuum to energy saver mode
es-ES
- pon la lavadora en modo frío
fr-FR
- mets l'aspirateur en silencieux
hi-IN
- वैक्यूम पर कार्पेट मोड लगाएं
it-IT
- imposta l'aspirapolvere su silenzioso
ja-JP
- 掃除機 を 静音 モードに設定して
ko-KR
- 세탁기 세탁량 많음 으로 설정해
pt-BR
- acionar a função autolimpeza do aspirador
- ligar o modo de aquecimento