Leitfaden für Smart-Home-Vorhänge
action.devices.types.CURTAIN
: Vorhänge können geöffnet und geschlossen werden, möglicherweise in mehrere Richtungen. Zum Beispiel können sich Vorhänge mit zwei Abschnitten entweder nach links oder nach rechts öffnen.
Dieser Typ gibt an, dass das Gerät das Vorhangsymbol und einige zugehörige Synonyme und Aliasse erhält.
Gerätefunktionen
Details zur Implementierung finden Sie in der entsprechenden Dokumentation zu Trait. Dazu gehören z. B. Attribute und Statusangaben, die Ihr Dienst unterstützen sollte, und Informationen zum Erstellen von EXECUTE- und QUERY-Antworten.
Erforderliche Merkmale
Diese Merkmale und Befehle sind gegebenenfalls für Ihr Gerät erforderlich. Wenn Ihr Gerät diese Merkmale nicht unterstützt, geben Sie 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: einfacher Vorhang
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die einen gemeinsamen „Vorhang“ basierend auf dem obigen Gerätetyp und den obigen Traits 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.CURTAIN", "traits": [ "action.devices.traits.OpenClose" ], "name": { "name": "Simple curtain" }, "willReportState": true, "attributes": { "openDirection": [ "LEFT", "RIGHT" ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Beispielantwort für QUERY
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "openState": [ { "openPercent": 30, "openDirection": "LEFT" }, { "openPercent": 50, "openDirection": "RIGHT" } ] } } } }
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": 10, "openDirection": "LEFT" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "openState": [ { "openPercent": 10, "openDirection": "LEFT" }, { "openPercent": 50, "openDirection": "RIGHT" } ] } } ] } }