Guide de garage pour la maison connectée
action.devices.types.GARAGE
: les portes de garage peuvent ouvrir, fermer et détecter un état ouvert. Elles peuvent également indiquer si un objet a masqué le tracé de la porte pendant sa fermeture ou si la porte est verrouillée et ne peut donc pas être contrôlée.
Ce type indique que l'appareil obtient l'icône Garage, ainsi que des synonymes et alias associés.
Fonctionnalités de l'appareil
Consultez la documentation sur les caractéristiques correspondantes pour obtenir des détails sur l'implémentation, tels que les attributs et les états que votre service doit accepter, et pour découvrir comment créer des réponses EXECUTE et QUERY.
Caractéristiques obligatoires
Ces caractéristiques et commandes sont nécessaires, le cas échéant. 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.
Caractéristiques recommandées
Ces caractéristiques sont recommandées, le cas échéant. Cependant, vous êtes libre de combiner toutes les caractéristiques disponibles pour correspondre au mieux aux fonctionnalités existantes de votre produit.
Exigences de qualité
- Latence:doit être inférieure ou égale à 2 000 ms.
- Fiabilité:doit être supérieure ou égale à 97%.
Exemple d'appareil: garage simple
Cette section contient des exemples de charges utiles d'intent représentant un "dépôt" commun, basé sur le type d'appareil et les caractéristiques ci-dessus. Si vous ajoutez ou supprimez des caractéristiques dans votre mise en œuvre, modifiez vos réponses en conséquence.
Exemple de réponse SYNC
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.GARAGE", "traits": [ "action.devices.traits.OpenClose", "action.devices.traits.LockUnlock" ], "name": { "name": "Simple garage" }, "willReportState": 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, "openPercent": 50, "isLocked": false, "isJammed": false } } } }
Exemples de commandes EXECUTE
OpenClose
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.OpenClose
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OpenClose", "params": { "openPercent": 100 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openPercent": 100 } } ] } }
Déverrouiller le verrouillage
Pour en savoir plus sur les paramètres de commande, consultez la documentation de référence sur
action.devices.traits.LockUnlock
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.LockUnlock", "params": { "lock": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isLocked": true, "isJammed": false } } ] } }
ERREURS sur l'appareil
Consultez la liste complète des erreurs et exceptions.obstructionDetected
: l'utilisateur a essayé de fermer la porte du garage, mais un objet la masquait.lockedState
: l'utilisateur a essayé de contrôler la porte du garage, mais celle-ci est verrouillée et ne permet pas de la déplacer.