Guide du déshydrateur connecté
action.devices.types.DEHYDRATOR : les interactions avec les déshydrateurs peuvent inclure le démarrage et l'arrêt, le réglage d'un minuteur, l'ajustement des modes de cuisson ou des préréglages alimentaires, ou l'ajustement d'autres paramètres.
Ce type indique que l'appareil reçoit l'icône Dehydrator ainsi que des synonymes et des alias associés.
Fonctionnalités de l'appareil
Pour en savoir plus sur l'implémentation, comme les attributs et les états que votre service doit prendre en charge, et sur la façon de créer des réponses EXECUTE et QUERY, consultez la documentation sur le trait correspondant.
Traits requis
Ces traits et commandes sont obligatoires, le cas échéant, pour votre appareil. Si votre appareil n'est pas compatible avec ces caractéristiques, saisissez le code d'erreur functionNotSupported dans une réponse QUERY ou EXECUTE. Pour en savoir plus, consultez Erreurs et exceptions.
Traits recommandés
Ces caractéristiques sont recommandées, le cas échéant pour votre appareil. Toutefois, vous êtes libre de combiner les traits disponibles pour correspondre au mieux aux fonctionnalités de votre produit existant.
Exemple d'appareil : déshydrateur simple
Cette section contient des exemples de charges utiles d'intent représentant un "déshydrateur" courant, en fonction du type d'appareil et des caractéristiques ci-dessus. Si vous ajoutez ou supprimez des traits dans votre implémentation, modifiez vos réponses en conséquence pour refléter ces changements.
Exemple de réponse SYNC
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.DEHYDRATOR", "traits": [ "action.devices.traits.Cook", "action.devices.traits.StartStop", "action.devices.traits.Timer", "action.devices.traits.OnOff" ], "name": { "name": "Simple dehydrator" }, "willReportState": true, "attributes": { "supportedCookingModes": [ "DEHYDRATE" ], "foodPresets": [ { "food_preset_name": "beef_jerky_key", "supported_units": [ "POUNDS", "OUNCES" ], "food_synonyms": [ { "synonym": [ "Beef jerky", "Jerky" ], "lang": "en" } ] }, { "food_preset_name": "beet_chips_key", "supported_units": [ "POUNDS", "OUNCES" ], "food_synonyms": [ { "synonym": [ "Beet chips", "Beets" ], "lang": "en" } ] } ], "maxTimerLimitSec": 30, "pausable": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Exemple de réponse 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, "timerRemainingSec": 30, "currentCookingMode": "DEHYDRATE", "currentFoodPreset": "beef_jerky_key" } } } }
Exemples de commandes EXECUTE
Cuisiner
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
action.devices.traits.Cook.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Cook", "params": { "start": false, "cookingMode": "DEHYDRATE" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "currentCookingMode": "NONE", "currentFoodPreset": "NONE" } } ] } }
StartStop
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
action.devices.traits.StartStop.
{ "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": "PENDING", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }
PauseUnpause
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
action.devices.traits.StartStop.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.PauseUnpause", "params": { "pause": true } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isRunning": false, "isPaused": true } } ] } }
TimerStart
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
action.devices.traits.Timer.
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 30 } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 30 } } ] } }
TimerAdjust
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
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": 20 } } ] } }
TimerPause
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
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": 15, "timerPaused": true } } ] } }
TimerResume
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
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": 15, "timerPaused": false } } ] } }
TimerCancel
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
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 } } ] } }
OnOff
Pour en savoir plus sur les paramètres de la commande, consultez la documentation de référence sur
action.devices.traits.OnOff.
{ "requestId": "6894439706274654532", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654532", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }