Anleitung zur Smart-Home-Kaffeemaschine
action.devices.types.COFFEE_MAKER
: Zu den Interaktionen mit Kaffeemaschinen gehören das Ein- und Ausschalten der Kaffeemaschine, das Anpassen von Kochmodi und Voreinstellungen für Speisen, das Anpassen der Zieltemperatur und das Anpassen verschiedener Einstellungen für den Nichtkochmodus.
Dieser Typ gibt an, dass das Gerät das Symbol für die Kaffeemaschine 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.
Empfohlene Traits
Diese Traits werden empfohlen, sofern sie für Ihr Gerät relevant sind. Sie können jedoch alle verfügbaren Merkmale beliebig kombinieren, um die Funktionalität Ihrer vorhandenen Produkte bestmöglich zu berücksichtigen.
Qualitätsanforderungen
- Latenz:muss kleiner oder gleich 800 ms sein.
- Zuverlässigkeit:muss größer oder gleich 97% sein.
Beispielgerät: einfache Kaffeemaschine
Dieser Abschnitt enthält Beispiel-Intent-Nutzlasten, die basierend auf dem obigen Gerätetyp und den obigen Eigenschaften eine gängige Kaffeemaschine 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.COFFEE_MAKER", "traits": [ "action.devices.traits.Cook", "action.devices.traits.TemperatureControl", "action.devices.traits.OnOff" ], "name": { "name": "Simple coffee maker" }, "willReportState": true, "attributes": { "temperatureRange": { "minThresholdCelsius": 0, "maxThresholdCelsius": 100 }, "temperatureUnitForUX": "F", "supportedCookingModes": [ "BREW" ], "foodPresets": [ { "food_preset_name": "coffee_key", "supported_units": [ "NO_UNITS", "CUPS" ], "food_synonyms": [ { "synonym": [ "Coffee" ], "lang": "en" } ] } ] }, "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, "temperatureSetpointCelsius": 70, "currentCookingMode": "BREW", "currentFoodPreset": "coffee_key", "currentFoodQuantity": 2, "currentFoodUnit": "CUPS" } } } }
Beispiele für EXECUTE-Befehle
Kochen
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.Cook
.
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Cook", "params": { "start": false, "cookingMode": "BREW" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentCookingMode": "NONE", "currentFoodPreset": "NONE" } } ] } }
SetTemperature
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.TemperatureControl
.
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetTemperature", "params": { "temperature": 85 } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 85 } } ] } }
OnOff
Weitere Informationen zu den Befehlsparametern finden Sie in der Referenz zu
action.devices.traits.OnOff
.
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }