Guía de lavado para casa inteligente
action.devices.types.WASHER
: Las lavadoras pueden tener funciones de inicio y detención independientemente de estar encendidas o apagadas (algunas lavadoras tienen botones de encendido independientes y otras no). Algunas se pueden pausar y reanudar durante el lavado.
Las lavadoras también tienen varios modos, y cada uno tiene sus propios parámetros de configuración relacionados. Son específicos de la lavadora y se interpretan de manera generalizada.
Este tipo indica que el dispositivo tiene el ícono de la lavadora y algunas funciones relacionadas sinónimos y alias.
Si deseas ver un ejemplo de cómo controlar una lavadora con la casa inteligente de Google, consulta el codelab de lavadoras para el hogar inteligente.
Funciones del dispositivo
Consulta la documentación de la característica correspondiente para detalles de implementación, como los atributos y los estados que tu servicio debe admitir, y cómo compilar respuestas EXECUTE y QUERY.
Características requeridas
Estas características y comandos son obligatorios, si corresponde a tu
dispositivo. Si tu dispositivo no admite estos rasgos, ingresa el código de error de
functionNotSupported
en una respuesta QUERY o EXECUTE. Consulta
Consulta Errores y excepciones para obtener más información.
Traits recomendados
Se recomiendan estas características, si corresponde a tu dispositivo. Sin embargo, puedes mezclar y combinar todas las características disponibles para que se adapten mejor a tu la funcionalidad del producto.
-
action.devices.traits.Modes
-
action.devices.traits.OnOff
-
action.devices.traits.RunCycle
-
action.devices.traits.Toggles
Requisitos de calidad
- Latencia: Debe ser menor o igual que 3,000 ms.
- Confiabilidad: Debe ser mayor o igual que 97%.
Dispositivo de ejemplo: lavadora simple
Esta sección contiene cargas útiles de intents de ejemplo que representan una "Lavadora" común según el tipo de dispositivo y las características antes mencionadas. Si agregas o quitas características en tu implementación, modificar tus respuestas en consecuencia para reflejar esos cambios.
Ejemplo de respuesta de SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.WASHER", "traits": [ "action.devices.traits.OnOff", "action.devices.traits.RunCycle", "action.devices.traits.StartStop", "action.devices.traits.Modes" ], "name": { "name": "Simple washer" }, "willReportState": true, "attributes": { "availableModes": [ { "name": "load_key", "name_values": [ { "name_synonym": [ "Load", "Size", "Load size" ], "lang": "en" } ], "settings": [ { "setting_name": "small_key", "setting_values": [ { "setting_synonym": [ "Small", "Half" ], "lang": "en" } ] }, { "setting_name": "large_key", "setting_values": [ { "setting_synonym": [ "Large", "Full" ], "lang": "en" } ] } ], "ordered": true } ], "pausable": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Ejemplo de respuesta de QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "on": true, "isRunning": true, "isPaused": false, "currentRunCycle": [ { "currentCycle": "rinse", "nextCycle": "spin", "lang": "en" } ], "currentTotalRemainingTime": 600, "currentCycleRemainingTime": 300, "currentModeSettings": { "load_key": "small_key" } } } } }
Ejemplos de comandos EXECUTE
OnOff
Para obtener detalles adicionales sobre los parámetros del comando,
consulta la
action.devices.traits.OnOff
referencia.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
StartStop
Para obtener detalles adicionales sobre los parámetros del comando,
consulta la
action.devices.traits.StartStop
referencia.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }
SetModes
Para obtener detalles adicionales sobre los parámetros del comando,
consulta la
action.devices.traits.Modes
referencia.
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_key": "large_key" } } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentModeSettings": { "load_key": "large_key" } } } ] } }