Guide du garage pour la maison connectée
action.devices.types.GARAGE
: les portes du garage peuvent s'ouvrir et se fermer, et détecter si elles sont ouvertes. Elles peuvent également indiquer si un objet a obstrué le passage de la porte lors de sa fermeture, ou si la porte est verrouillée et ne peut donc pas être contrôlée.
Ce type indique que l'appareil reçoit l'icône du garage et d'autres des synonymes et des alias.
Fonctionnalités de l'appareil
Reportez-vous à la documentation des caractéristiques correspondantes pour les détails de mise en œuvre, tels que les attributs et les états que votre service doit prendre en charge, et comment créer des réponses EXECUTE et QUERY.
Caractéristiques requises
Ces caractéristiques et commandes sont nécessaires, s'il s'agit
appareil. Si votre appareil ne prend pas en charge ces caractéristiques, saisissez le code d'erreur de
functionNotSupported
dans une réponse QUERY ou EXECUTE. Voir
Erreurs et exceptions.
Caractéristiques recommandées
Ces caractéristiques sont recommandées, si elles s'appliquent à votre appareil. Cependant, vous êtes libre de combiner toutes les caractéristiques disponibles pour les faire correspondre au mieux la fonctionnalité du produit.
Exigences de qualité
- Latence:la latence doit être inférieure ou égale à 2 000 ms.
- La 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 "garage" commun en fonction du type d'appareil et des caractéristiques ci-dessus. Si vous ajoutez ou supprimez des caractéristiques dans votre implémentation, modifiez vos réponses en conséquence pour refléter ces changements.
Exemple de réponse SYNC
<ph type="x-smartling-placeholder">{ "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
<ph type="x-smartling-placeholder">{ "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 les
action.devices.traits.OpenClose
référence.
{ "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 } } ] } }
LockUnlock
Pour en savoir plus sur
les paramètres de commande,
consultez les
action.devices.traits.LockUnlock
référence.
{ "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 d'appareil
Voir la liste complète les erreurs et les exceptions.obstructionDetected
: l'utilisateur a essayé de fermer la porte du garage, mais un un objet obstruant la porte.lockedState
: l'utilisateur a essayé de contrôler la porte du garage, mais celle-ci est verrouillée qui ne lui permet pas de se déplacer.