Guía de la multicocina de la casa inteligente

action.devices.types.MULTICOOKER: Las interacciones con las ollas multiusos pueden incluir el inicio y la detención, la configuración de un temporizador o el ajuste de modos que no sean de cocción.

Este tipo indica que el dispositivo obtiene el ícono de Multicooker y algunos sinónimos y alias relacionados.

Funciones del dispositivo

Consulta la documentación correspondiente de la función para obtener detalles de la implementación, como los atributos y estados que debe admitir tu servicio, y cómo compilar respuestas de EXECUTE y QUERY.

Características obligatorias

Estos atributos y comandos son obligatorios, si son aplicables a tu dispositivo. Si tu dispositivo no admite estas características, ingresa el código de error de functionNotSupported en una respuesta QUERY o EXECUTE. Consulta Errores y excepciones para obtener más información.

Se recomiendan estas características, si corresponde a tu dispositivo. Sin embargo, puedes combinar todos los atributos disponibles para que coincidan mejor con la funcionalidad de tu producto existente.

Requisitos de calidad

  • Latencia: Debe ser menor o igual que 800 ms.
  • Fiabilidad: Debe ser superior o igual al 97%.

Ejemplo de dispositivo: Multicocina simple

Esta sección contiene cargas útiles de intents de ejemplo que representan una "multiolla" común según el tipo de dispositivo y las características anteriores. Si agregas o quitas atributos en tu implementación, modifica tus respuestas según corresponda para reflejar esos cambios.

Respuesta de SYNC de muestra

Solicitud
{   "requestId": "6894439706274654512",   "inputs": [     {       "intent": "action.devices.SYNC"     }   ] }
Respuesta
{   "requestId": "6894439706274654512",   "payload": {     "agentUserId": "user123",     "devices": [       {         "id": "123",         "type": "action.devices.types.MULTICOOKER",         "traits": [           "action.devices.traits.Cook",           "action.devices.traits.OnOff",           "action.devices.traits.Timer",           "action.devices.traits.StartStop"         ],         "name": {           "name": "Simple multicooker"         },         "willReportState": true,         "attributes": {           "supportedCookingModes": [             "COOK",             "BOIL",             "STEW"           ],           "foodPresets": [             {               "food_preset_name": "soup_key",               "supported_units": [                 "CUPS",                 "OUNCES"               ],               "food_synonyms": [                 {                   "synonym": [                     "Soup",                     "Stew"                   ],                   "lang": "en"                 }               ]             },             {               "food_preset_name": "oatmeal_key",               "supported_units": [                 "CUPS",                 "OUNCES"               ],               "food_synonyms": [                 {                   "synonym": [                     "Oatmeal",                     "Oats",                     "Porridge"                   ],                   "lang": "en"                 }               ]             }           ],           "maxTimerLimitSec": 1200,           "pausable": true         },         "deviceInfo": {           "manufacturer": "smart-home-inc",           "model": "hs1234",           "hwVersion": "3.2",           "swVersion": "11.4"         }       }     ]   } }

Respuesta de QUERY de muestra

Solicitud
{   "requestId": "6894439706274654514",   "inputs": [     {       "intent": "action.devices.QUERY",       "payload": {         "devices": [           {             "id": "123"           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654514",   "payload": {     "devices": {       "123": {         "status": "SUCCESS",         "online": true,         "on": true,         "isRunning": true,         "isPaused": false,         "timerRemainingSec": 300,         "currentCookingMode": "BOIL",         "currentFoodPreset": "soup_key"       }     }   } }

Comandos EXECUTE de muestra

Descubre qué cocinar

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Cook.

Solicitud
{   "requestId": "6894439706274654516",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.Cook",                 "params": {                   "start": true,                   "cookingMode": "COOK"                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654516",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "currentCookingMode": "COOK",           "currentFoodPreset": "NONE"         }       }     ]   } }

OnOff

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.OnOff.

Solicitud
{   "requestId": "6894439706274654532",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.OnOff",                 "params": {                   "on": true                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654532",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "on": true         }       }     ]   } }

TimerStart

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Timer.

Solicitud
{   "requestId": "6894439706274654522",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.TimerStart",                 "params": {                   "timerTimeSec": 300                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654522",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "timerRemainingSec": 300         }       }     ]   } }

TimerAdjust

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Timer.

Solicitud
{   "requestId": "6894439706274654524",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.TimerAdjust",                 "params": {                   "timerTimeSec": -10                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654524",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "timerRemainingSec": 290         }       }     ]   } }

TimerPause

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Timer.

Solicitud
{   "requestId": "6894439706274654526",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.TimerPause"               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654526",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "timerRemainingSec": 300,           "timerPaused": true         }       }     ]   } }

TimerResume

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Timer.

Solicitud
{   "requestId": "6894439706274654528",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.TimerResume"               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654528",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "timerRemainingSec": 300,           "timerPaused": false         }       }     ]   } }

TimerCancel

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.Timer.

Solicitud
{   "requestId": "6894439706274654530",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.TimerCancel"               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654530",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "timerRemainingSec": -1         }       }     ]   } }

StartStop

Para obtener más detalles sobre los parámetros del comando, consulta la referencia de action.devices.traits.StartStop.

Solicitud
{   "requestId": "6894439706274654518",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.StartStop",                 "params": {                   "start": true                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654518",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "isRunning": true,           "isPaused": false         }       }     ]   } }

ERRORES del dispositivo

Consulta la lista completa de errores y excepciones.