Attributschema für Smart-Home-Modi
action.devices.traits.Modes
– Diese Eigenschaft deckt alle verfügbaren Modi und modispezifischen Einstellungen für ein Gerät ab.
Diese Eigenschaft gilt für alle Geräte mit einer beliebigen Anzahl von „N-Wege-Modi“, bei denen die Modi und Einstellungen für jeden Modus beliebig und für jedes Gerät oder jeden Gerätetyp eindeutig sind. Für jeden Modus sind mehrere Einstellungen möglich, aber jeweils nur eine kann ausgewählt werden. Ein Trockner kann also nicht gleichzeitig im Modus „Zart“, „Normal“ und „Schwer“ laufen. Eine Einstellung, die einfach aktiviert oder deaktiviert werden kann, gehört zum Attribut Toggles.
Eine Waschmaschine kann beispielsweise Einstellungen für die Beladungsmenge und die Temperatur haben. Dies sind beide Modi, da sie unabhängig voneinander sind, aber jeweils nur einen Zustand haben können. Der Nutzer kann einen Modus wie die Temperatur explizit mit einem Befehl wie Setze die Temperatur der Waschmaschine auf kalt festlegen.
Einige Modi sind „sortiert“ und können auch mit den Sprachbefehlen „Höher“/„Niedriger“ angepasst werden. Die Wäschemenge (klein, mittel, groß) und die Temperatur sind beispielsweise klar angeordnet. Die Wäscheart (Zarte Wäsche, Normal, Wolle usw.) ist das möglicherweise nicht.
Diese Eigenschaft deckt einen oder mehrere individuelle Modi ab, die Nutzer festlegen können. Im Allgemeinen sollten diese Modi für Funktionen verwendet werden, die nicht mit anderen Gerätefunktionen verknüpft sind. Für verknüpfte Verhaltensweisen wie das Ein- oder Ausschalten des Geräts sollten spezifischere Eigenschaften verwendet werden, z. B. die thermostatMode
im Attribut TemperatureSetting.
Geräteattribute
Geräte mit diesem Merkmal können die folgenden Attribute im Rahmen des Vorgangs SYNC
melden. Weitere Informationen zum Umgang mit SYNC
-Intents finden Sie unter Intent-Ausführung.
Attribute | Typ | Beschreibung |
---|---|---|
availableModes |
Array |
Erforderlich. Liste der verfügbaren Modi. |
[item, ...] |
Objekt |
Verfügbarkeitsmodus |
name |
String |
Erforderlich. Interner Name des Modus, der in Befehlen und Status verwendet wird. Das kann für Nutzer nicht nutzerfreundlich sein und wird in allen Sprachen verwendet. |
name_values |
Array |
Erforderlich. Synonyme für den Modus in den einzelnen unterstützten Sprachen. |
[item, ...] |
Objekt |
Synonyme für den Modus in einer bestimmten Sprache. |
name_synonym |
Array |
Erforderlich. Synonyme für den Modus. Der erste String in dieser Liste wird als kanonischer Name des Levels in dieser Sprache verwendet. |
[item, ...] |
String |
Name des Synonymes. |
lang |
String |
Erforderlich. Sprachcode (ISO 639-1). Unterstützte Sprachen |
settings |
Array |
Erforderlich. Unterstützte Einstellungen für diesen Modus. |
[item, ...] |
Objekt |
Unterstützte Einstellung. Es sind mindestens zwei Elemente erforderlich. |
setting_name |
String |
Erforderlich. Interner Name der Moduseinstellung, der in Befehlen und Status verwendet wird. Das kann für Nutzer nicht nutzerfreundlich sein und wird in allen Sprachen verwendet. |
setting_values |
Array |
Erforderlich. Synonyme für die Einstellung in den einzelnen unterstützten Sprachen. |
[item, ...] |
Objekt |
Synonyme für die Einstellung in einer bestimmten Sprache. |
setting_synonym |
Array |
Erforderlich. Synonyme für die Einstellung. Der erste String in dieser Liste wird als kanonischer Name des Levels in dieser Sprache verwendet. |
[item, ...] |
String |
Name des Synonymes. |
lang |
String |
Erforderlich. Sprachcode (ISO 639-1). Unterstützte Sprachen |
ordered |
Boolesch |
(Standardeinstellung: Wenn diese Option auf „wahr“ gesetzt ist, wird zusätzliche Grammatik für die Logik „erhöhen/verringern“ in der Reihenfolge (steigend) des „settings“-Arrays angewendet. |
commandOnlyModes |
Boolesch |
(Standardeinstellung: Gibt an, ob das Gerät die unidirektionale (wahr) oder bidirektionale (falsch) Kommunikation unterstützt. Legen Sie dieses Attribut auf „true“ fest, wenn das Gerät nicht auf eine QUERY-Intention oder den Berichtsstatus für dieses Attribut antworten kann. |
queryOnlyModes |
Boolesch |
(Standardeinstellung: Erforderlich, wenn das Gerät die Ausführung nur von Abfragen unterstützt. Dieses Attribut gibt an, ob das Gerät nur zu Statusinformationen abgefragt und nicht gesteuert werden kann. |
Beispiele
Gerät mit mehreren Modi und Einstellungen
{ "availableModes": [ { "name": "load_mode", "name_values": [ { "name_synonym": [ "Load", "Size", "Load size" ], "lang": "en" } ], "settings": [ { "setting_name": "small_load", "setting_values": [ { "setting_synonym": [ "Small", "Half" ], "lang": "en" } ] }, { "setting_name": "medium_load", "setting_values": [ { "setting_synonym": [ "Medium", "Normal" ], "lang": "en" } ] }, { "setting_name": "large_load", "setting_values": [ { "setting_synonym": [ "Large", "Full" ], "lang": "en" } ] } ], "ordered": true }, { "name": "temp_mode", "name_values": [ { "name_synonym": [ "Temperature", "Temp" ], "lang": "en" } ], "settings": [ { "setting_name": "hot_temp", "setting_values": [ { "setting_synonym": [ "Hot", "White" ], "lang": "en" } ] }, { "setting_name": "warm_temp", "setting_values": [ { "setting_synonym": [ "Warm", "Color" ], "lang": "en" } ] }, { "setting_name": "cold_temp", "setting_values": [ { "setting_synonym": [ "Cold", "Delicate" ], "lang": "en" } ] } ], "ordered": false } ] }
Gerät mit Modi, die nur Befehle unterstützen
{ "availableModes": [ { "name": "light_mode", "name_values": [ { "name_synonym": [ "Light", "Lighting" ], "lang": "en" } ], "settings": [ { "setting_name": "day_light", "setting_values": [ { "setting_synonym": [ "Day", "Bright" ], "lang": "en" } ] }, { "setting_name": "night_light", "setting_values": [ { "setting_synonym": [ "Night", "Dark" ], "lang": "en" } ] }, { "setting_name": "reading_light", "setting_values": [ { "setting_synonym": [ "Reading", "Ambiant" ], "lang": "en" } ] } ], "ordered": false } ], "commandOnlyModes": true, "queryOnlyModes": false }
GERÄTESTATUS
Entitäten mit diesem Attribut können im Rahmen des Vorgangs QUERY
die folgenden Status melden. Weitere Informationen zum Umgang mit QUERY
-Intents finden Sie unter Intent-Ausführung.
Bundesstaaten | Typ | Beschreibung |
---|---|---|
currentModeSettings |
Objekt |
Erforderlich. Schlüssel/Wert-Paar mit dem Modus |
<string> |
String |
Aktuell: |
Beispiele
In welchem Modus befindet sich das Gerät?
{ "currentModeSettings": { "load_mode": "small_load", "temp_mode": "cold_temp" } }
Gerätebefehle
Geräte mit dieser Eigenschaft können im Rahmen des Vorgangs EXECUTE
auf die folgenden Befehle reagieren. Weitere Informationen zum Umgang mit EXECUTE
-Intents finden Sie unter Intent-Ausführung.
action.devices.commands.SetModes
Aktualisieren Sie die Moduseinstellungen.
Parameter
Parameter | Typ | Beschreibung |
---|---|---|
updateModeSettings |
Objekt |
Erforderlich. Schlüssel/Wert-Paar mit dem Modus |
<string> |
String |
Neue |
Beispiele
Legen Sie „Hohe Auslastung“ fest.
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
Beispieläußerungen
- Stelle den Staubsauger auf Ruhemodus
- set the vacuum to energy saver mode
- pon la lavadora en modo frío
- mets l'aspirateur en silencieux
- वैक्यूम पर कार्पेट मोड लगाएं
- imposta l'aspirapolvere su silenzioso
- 掃除機 を 静音 モードに設定して
- 세탁기 세탁량 많음 으로 설정해
- acionar a função autolimpeza do aspirador
- ligar o modo de aquecimento