Guía del grifo de casa inteligente

action.devices.types.FAUCET: Los grifos pueden dispensar líquidos en varias cantidades y ajustes predeterminados. Los grifos pueden tener varios modos, y cada uno tiene su propia configuración relacionada. Son específicos del grifo y se interpretan de forma generalizada.

Este tipo indica que el dispositivo obtiene el ícono de grifo 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.

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: Grifo simple

Esta sección contiene cargas útiles de intents de ejemplo que representan un "grifo" común según el tipo de dispositivo y los atributos 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.FAUCET",         "traits": [           "action.devices.traits.Dispense",           "action.devices.traits.TemperatureControl",           "action.devices.traits.OnOff"         ],         "name": {           "name": "Simple faucet"         },         "willReportState": true,         "attributes": {           "supportedDispenseItems": [             {               "item_name": "water_key",               "item_name_synonyms": [                 {                   "lang": "en",                   "synonyms": [                     "Water"                   ]                 },                 {                   "lang": "es",                   "synonyms": [                     "Agua"                   ]                 },                 {                   "lang": "fr",                   "synonyms": [                     "Eau"                   ]                 }               ],               "supported_units": [                 "TEASPOONS",                 "TABLESPOONS",                 "FLUID_OUNCES",                 "CUPS",                 "PINTS",                 "QUARTS",                 "GALLONS",                 "MILLILITERS",                 "LITERS",                 "DECILITERS"               ],               "default_portion": {                 "amount": 2,                 "unit": "CUPS"               }             }           ],           "supportedDispensePresets": [             {               "preset_name": "cat_water_bowl_key",               "preset_name_synonyms": [                 {                   "lang": "en",                   "synonyms": [                     "Cat water bowl",                     "Cat water dish",                     "Cat water cup"                   ]                 },                 {                   "lang": "es",                   "synonyms": [                     "Plato de agua para gato",                     "Bebedero para gato"                   ]                 },                 {                   "lang": "fr",                   "synonyms": [                     "Bol d'eau de chat",                     "Bac \u00e0 eau pour chat",                     "Tasse d'eau de chat"                   ]                 }               ]             }           ],           "temperatureRange": {             "minThresholdCelsius": 25,             "maxThresholdCelsius": 100           },           "temperatureUnitForUX": "F"         },         "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": false,         "temperatureSetpointCelsius": 30,         "dispenseItems": [           {             "itemName": "water_key",             "amountLastDispensed": {               "amount": 2.5,               "unit": "CUPS"             },             "isCurrentlyDispensing": false           }         ]       }     }   } }

Comandos EXECUTE de muestra

Dispensación

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

Solicitud
{   "requestId": "6894439706274654516",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.Dispense",                 "params": {                   "amount": 1,                   "unit": "CUPS",                   "item": "water_key"                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654516",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "dispenseItems": [             {               "itemName": "water_key",               "amountLastDispensed": {                 "amount": 1,                 "unit": "CUPS"               },               "isCurrentlyDispensing": true             }           ]         }       }     ]   } }

SetTemperature

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

Solicitud
{   "requestId": "6894439706274654518",   "inputs": [     {       "intent": "action.devices.EXECUTE",       "payload": {         "commands": [           {             "devices": [               {                 "id": "123"               }             ],             "execution": [               {                 "command": "action.devices.commands.SetTemperature",                 "params": {                   "temperature": 65                 }               }             ]           }         ]       }     }   ] }
Respuesta
{   "requestId": "6894439706274654518",   "payload": {     "commands": [       {         "ids": [           "123"         ],         "status": "SUCCESS",         "states": {           "online": true,           "temperatureSetpointCelsius": 65         }       }     ]   } }

OnOff

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

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

ERRORES del dispositivo

Consulta la lista completa de errores y excepciones.