Smart-Home-Lichtanleitung
action.devices.types.LIGHT
– Lampen können ein- und ausgeschaltet werden. Sie können außerdem über zusätzliche Funktionen verfügen, z. B. Dimmen und die Möglichkeit, die Farbe zu ändern.
Dieser Typ gibt an, dass das Gerät das helle Symbol 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.
Empfohlene Eigenschaften
Diese Traits werden empfohlen, sofern für Ihr Gerät zutreffend. Sie können jedoch alle verfügbaren Merkmale beliebig kombinieren, um der vorhandenen Produktfunktionalität am besten zu entsprechen.
Qualitätsanforderungen
- Latenz:muss kleiner oder gleich 700 ms sein.
- Zuverlässigkeit: muss größer oder gleich 97% sein.
Beispielgerät: Einfaches helles Design
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die ein gemeinsames „Light“ darstellen, basierend auf dem obigen Gerätetyp und den obigen Traits. 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.LIGHT", "traits": [ "action.devices.traits.ColorSetting", "action.devices.traits.Brightness", "action.devices.traits.OnOff" ], "name": { "name": "Simple light" }, "willReportState": true, "attributes": { "colorTemperatureRange": { "temperatureMinK": 2000, "temperatureMaxK": 6500 } }, "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, "on": true, "brightness": 65, "color": { "temperatureK": 4000 } } } } }
Beispiele für EXECUTE-Befehle
ColorAbsolute
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.ColorSetting
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ColorAbsolute", "params": { "color": { "name": "Warm White", "temperature": 3000 } } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "color": { "temperatureK": 3000 } } } ] } }
BrightnessAbsolute
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.Brightness
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.BrightnessAbsolute", "params": { "brightness": 65 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "brightness": 65 } } ] } }
OnOff
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.OnOff
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }