Esquema de la función de modos de casa inteligente
action.devices.traits.Modes
: Esta característica abarca todos los modos disponibles y la configuración específica de cada dispositivo.
Esta característica pertenece a los dispositivos con una cantidad arbitraria de modos "n-way", en los que los modos y la configuración de cada modo son arbitrarios y únicos para cada dispositivo o tipo de dispositivo. Cada modo tiene varias opciones de configuración posibles, pero solo se puede seleccionar una a la vez; una secadora no puede estar en modo "delicado", "normal" y "de trabajo pesado" de forma simultánea. Una opción de configuración que solo se puede activar o desactivar pertenece a la característica Toggles.
Por ejemplo, una lavadora puede tener una configuración para el tamaño de la carga y la temperatura. Ambos serían los modos porque son independientes entre sí, pero cada uno puede estar en un solo estado a la vez. El usuario puede configurar un modo, como la temperatura, de forma explícita con un comando como Establece la temperatura de la lavadora en frío.
Algunos modos están "ordenados" y también se pueden ajustar con los gestos de subir y bajar, aumentar o disminuir el texto. Por ejemplo, el tamaño de carga (pequeño, mediano, grande) y la temperatura están claramente ordenados (ten en cuenta que la temperatura no es un termostato real con un objetivo numérico, como en otros dispositivos), pero es posible que el tipo de carga (delicada, normal, de lana, etc.) no lo sea.
Esta característica cubre uno o más modos individuales que los usuarios pueden configurar. En general, estos modos deben usarse para la funcionalidad que está desvinculada de otros comportamientos del dispositivo. El comportamiento vinculado, como encender o apagar el dispositivo, debería usar rasgos más específicos (por ejemplo, el thermostatMode
en la configuración de temperatura).
ATRIBUTOS DEL Dispositivo
Los dispositivos con esta característica pueden informar los siguientes atributos como parte de la operación SYNC
. Para obtener más información sobre cómo manejar los intents SYNC
, consulta Entrega de intents.
Atributos | Tipo | Descripción |
---|---|---|
availableModes |
Matriz |
Obligatorio. Lista de modos disponibles. |
[item, ...] |
Objeto |
Modo disponible. |
name |
String |
Obligatorio. Nombre interno del modo, que se usará en comandos y estados. Esto puede no ser fácil de usar y se compartirá en todos los idiomas. |
name_values |
Matriz |
Obligatorio. Sinónimos del modo en cada idioma compatible. |
[item, ...] |
Objeto |
Sinónimos del modo en un idioma determinado. |
name_synonym |
Matriz |
Obligatorio. Sinónimos del modo. La primera string de esta lista se usa como el nombre canónico del nivel en ese idioma. |
[item, ...] |
String |
Nombre del sinónimo. |
lang |
String |
Obligatorio. Código de idioma (ISO 639-1). Consulte los idiomas compatibles. |
settings |
Matriz |
Obligatorio. Configuración compatible con este modo. |
[item, ...] |
Objeto |
Configuración compatible. Se requieren al menos 2 elementos. |
setting_name |
String |
Obligatorio. Nombre interno de la configuración del modo, que se usará en comandos y estados. Esto puede no ser fácil de usar y se compartirá en todos los idiomas. |
setting_values |
Matriz |
Obligatorio. Sinónimos de la configuración en cada idioma admitido. |
[item, ...] |
Objeto |
Sinónimos de la configuración en un idioma determinado. |
setting_synonym |
Matriz |
Obligatorio. Sinónimos de la configuración. La primera string de esta lista se usa como el nombre canónico del nivel en ese idioma. |
[item, ...] |
String |
Nombre del sinónimo. |
lang |
String |
Obligatorio. Código de idioma (ISO 639-1). Consulte los idiomas compatibles. |
ordered |
Booleano |
(Predeterminado: Si se establece como verdadera, se aplicará una gramática adicional para la lógica de aumento o disminución, en el orden (en aumento) del arreglo de configuración. |
commandOnlyModes |
Booleano |
(Predeterminado: Indica si el dispositivo admite el uso de comunicación unidireccional (verdadero) o bidireccional (falso). Establece este atributo como verdadero si el dispositivo no puede responder a un intent QUERY o al estado del informe para esta característica. |
queryOnlyModes |
Booleano |
(Predeterminado: Obligatorio si el dispositivo solo admite la ejecución de consultas. Este atributo indica si el dispositivo solo se puede consultar para obtener información de estado y no se puede controlar. |
Ejemplos
Dispositivo con múltiples modos y opciones de configuración.
{ "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 } ] }
Dispositivo con modos de solo comando.
{ "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 }
Dispositivo STATEs
Las entidades con esta característica pueden informar los siguientes estados como parte de la operación QUERY
. Para obtener más información sobre cómo manejar los intents QUERY
, consulta Entrega de intents.
Estados | Tipo | Descripción |
---|---|---|
currentModeSettings |
Objeto |
Obligatorio. Es el par clave-valor con el modo |
<string> |
String |
|
Ejemplos
¿En qué modo está el dispositivo?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
Dispositivo COMMAND
Los dispositivos con esta característica pueden responder a los siguientes comandos como parte de la operación EXECUTE
. Para obtener más información sobre cómo manejar los intents EXECUTE
, consulta Entrega de intents.
action.devices.commands.SetModes
Actualiza la configuración del modo.
Parámetros
Parámetros | Tipo | Descripción |
---|---|---|
updateModeSettings |
Objeto |
Obligatorio. Es el par clave-valor con el modo |
<string> |
String |
Nueva |
Ejemplos
Establece una carga grande.
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
Expresiones de muestra
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