Smart-Home-Luftkühler – Leitfaden
action.devices.types.AIRCOOLER
– Luftkühler sind Geräte zum Kühlen und Steuern der Luftfeuchtigkeit. Diese Geräte sind in der Regel leichter und tragbarer als Klimaanlagen und haben einen angebrachten Wassertank. Luftkühler unterstützen die Heizung oder die Einstellung von exakten Temperaturen möglicherweise nicht. Zu den Interaktionen mit Luftkühlern kann es gehören, dass du die Einstellung für Lüftergeschwindigkeit und Luftfeuchtigkeit änderst.
Das bedeutet, dass das Gerät das „Luftkühler“-Symbol 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.
-
action.devices.traits.FanSpeed
-
action.devices.traits.HumiditySetting
-
action.devices.traits.OnOff
-
action.devices.traits.TemperatureSetting
Qualitätsanforderungen
- Latenz:muss kleiner oder gleich 1.000 ms sein.
- Zuverlässigkeit:muss größer oder gleich 97% sein.
Beispielgerät: Einfacher Luftkühler
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die basierend auf dem obigen Gerätetyp und den obigen Eigenschaften einen gemeinsamen „Luftkühler“ 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.AIRCOOLER", "traits": [ "action.devices.traits.FanSpeed", "action.devices.traits.HumiditySetting", "action.devices.traits.OnOff", "action.devices.traits.TemperatureSetting" ], "name": { "name": "Simple air cooler" }, "willReportState": true, "attributes": { "humiditySetpointRange": { "minPercent": 0, "maxPercent": 50 }, "availableFanSpeeds": { "speeds": [ { "speed_name": "off_key", "speed_values": [ { "speed_synonym": [ "Off", "0" ], "lang": "en" } ] }, { "speed_name": "low_key", "speed_values": [ { "speed_synonym": [ "Low", "1" ], "lang": "en" } ] }, { "speed_name": "medium_key", "speed_values": [ { "speed_synonym": [ "Medium", "2" ], "lang": "en" } ] }, { "speed_name": "high_key", "speed_values": [ { "speed_synonym": [ "High", "3" ], "lang": "en" } ] } ], "ordered": true }, "availableThermostatModes": [ "off", "cool", "on", "fan-only", "eco" ], "thermostatTemperatureUnit": "C" }, "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, "on": true, "currentFanSpeedSetting": "low_key", "thermostatMode": "cool", "thermostatTemperatureAmbient": 25, "thermostatTemperatureSetpoint": 20, "humiditySetpointPercent": 15, "humidityAmbientPercent": 10 } } } }
Beispiele für EXECUTE-Befehle
SetFanSpeed
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.FanSpeed
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetFanSpeed", "params": { "fanSpeed": "high_key" } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentFanSpeedSetting": "high_key" } } ] } }
SetHumidity
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.HumiditySetting
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetHumidity", "params": { "humidity": 20 } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "humiditySetpointPercent": 20, "humidityAmbientPercent": 10 } } ] } }
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 } } ] } }
ThermostatTemperatureSetpoint
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.TemperatureSetting
.
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatTemperatureSetpoint", "params": { "thermostatTemperatureSetpoint": 22 } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }
ThermostatSetMode
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.TemperatureSetting
.
{ "requestId": "6894439706274654524", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ThermostatSetMode", "params": { "thermostatMode": "cool" } } ] } ] } } ] }
{ "requestId": "6894439706274654524", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "thermostatMode": "cool", "thermostatTemperatureSetpoint": 22, "thermostatTemperatureAmbient": 25.1 } } ] } }