Guía de horno para casa inteligente
action.devices.types.OVEN
- La interacción con hornos implica la capacidad de hornear o asar a ciertas temperaturas. La temperatura física del horno difiere según la calefacción del horno, por lo que es posible que esto también se supervise. El horno tiene un tiempo de cocción que limita la duración de la horneación.
Este tipo indica que el dispositivo obtiene el ícono de horno y algunos sinónimos y alias relacionados.
Los hornos tienen gramática basada en tipos paraaction.devices.traits.OnOff
y action.devices.traits.TemperatureControl
: - Si el dispositivo admite
OnOff
, precaliente el horno enviará un comandoaction.devices.commands.OnOff
. - Si el dispositivo admite
TemperatureControl
, precaliente el horno a 350 grados enviará un comando para ajustarlo a esa temperatura.
Funciones del dispositivo
Consulta la documentación de características correspondiente para obtener detalles de implementación, como atributos y estados que tu servicio debe admitir, y cómo compilar respuestas de EXECUTE y QUERY.
Características obligatorias
Estas características y comandos son necesarios si corresponden a tu dispositivo.
Características recomendadas
Recomendamos estas características, si se aplican a tu dispositivo. Sin embargo, puedes combinar todas las características disponibles para que se adapten mejor a la funcionalidad del producto existente.
Requisitos de calidad
- Latencia: Debe ser menor o igual que 3,000 ms.
- Confiabilidad: Debe ser mayor o igual que 97%.
Ejemplo de dispositivo: horno simple
Esta sección contiene cargas útiles de intent de ejemplo que representan un "horno" común basado en el tipo de dispositivo y las características anteriores. Si agregas o quitas rasgos en tu implementación, modifica tus respuestas según corresponda para reflejar esos cambios.
Respuesta de muestra de SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.OVEN", "traits": [ "action.devices.traits.Cook", "action.devices.traits.OnOff", "action.devices.traits.TemperatureControl", "action.devices.traits.Timer", "action.devices.traits.StartStop" ], "name": { "name": "Simple oven" }, "willReportState": true, "attributes": { "supportedCookingModes": [ "BAKE", "CONVECTION_BAKE", "ROAST" ], "maxTimerLimitSec": 3600, "temperatureRange": { "minThresholdCelsius": 65, "maxThresholdCelsius": 288 }, "temperatureUnitForUX": "F" }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Respuesta de muestra 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, "temperatureSetpointCelsius": 175, "currentCookingMode": "BAKE", "timerRemainingSec": -1 } } } }
Comandos de EXECUTE de muestra
Islas Cook
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Cook
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Cook", "params": { "start": true, "cookingMode": "ROAST" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentCookingMode": "ROAST" } } ] } }
Activado/desactivado
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.OnOff
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
Establecer temperatura
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.TemperatureControl
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetTemperature", "params": { "temperature": 200 } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 200, "temperatureAmbientCelsius": 100 } } ] } }
Inicio del temporizador
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Timer
.
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 300 } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300 } } ] } }
Ajustar temporizador
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Timer
.
{ "requestId": "6894439706274654524", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": -10 } } ] } ] } } ] }
{ "requestId": "6894439706274654524", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 290 } } ] } }
Pausa del temporizador
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Timer
.
{ "requestId": "6894439706274654526", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerPause" } ] } ] } } ] }
{ "requestId": "6894439706274654526", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300, "timerPaused": true } } ] } }
Reanudar temporizador
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Timer
.
{ "requestId": "6894439706274654528", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerResume" } ] } ] } } ] }
{ "requestId": "6894439706274654528", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300, "timerPaused": false } } ] } }
Cancelar temporizador
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.Timer
.
{ "requestId": "6894439706274654530", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerCancel" } ] } ] } } ] }
{ "requestId": "6894439706274654530", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": -1 } } ] } }
Iniciar
Para obtener detalles adicionales sobre los parámetros del comando, consulta la referencia de
action.devices.traits.StartStop
.
{ "requestId": "6894439706274654532", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654532", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true } } ] } }