Anleitung für die Schublade für das Smart Home
action.devices.types.DRAWER
: Schubladen können möglicherweise in mehrere Richtungen geöffnet und geschlossen werden.
Dieser Typ gibt an, dass das Gerät das Leistensymbol und einige verwandte Synonyme und Aliasse erhält.
Gerätefunktionen
Informationen zur Implementierung finden Sie in der entsprechenden Trait-Dokumentation, z. B. zu Attributen und Statusangaben, die Ihr Dienst unterstützen sollte, und zum Erstellen von EXECUTE- und QUERY-Antworten.
Erforderliche Merkmale
Diese Merkmale und Befehle sind bei Bedarf für Ihr Gerät erforderlich. Wenn dein Gerät diese Traits nicht unterstützt, gib den Fehlercode functionNotSupported
in einer QUERY- oder EXECUTE-Antwort ein. Weitere Informationen finden Sie unter Fehler und Ausnahmen.
Qualitätsanforderungen
- Latenz:muss kleiner oder gleich 2.500 ms sein.
- Zuverlässigkeit: muss größer oder gleich 97% sein.
Beispielgerät: Einfache Leiste
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die einen gemeinsamen „Drawer“ basierend auf dem oben genannten Gerätetyp und den obigen Eigenschaften darstellen. Wenn Sie in Ihrer Implementierung Traits hinzufügen oder entfernen, passen Sie Ihre Antworten entsprechend an.
Beispiel für SYNC-Antwort
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.DRAWER", "traits": [ "action.devices.traits.OpenClose" ], "name": { "name": "Simple drawer" }, "willReportState": true, "attributes": { "discreteOnlyOpenClose": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Beispiel für QUERY-Antwort
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "openPercent": 100 } } } }
Beispiele für EXECUTE-Befehle
OpenClose
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.OpenClose
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OpenClose", "params": { "openPercent": 0 } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openPercent": 0 } } ] } }