Schema für Smart-Home-Modi
action.devices.traits.Modes
: Diese Eigenschaft deckt alle verfügbaren Modi und modusspezifischen Einstellungen für ein Gerät ab.
Dieses Merkmal gehört zu allen Geräten mit einer beliebigen Anzahl von "n-way"-Modi, in denen die Modi und Einstellungen für jeden Modus für jedes Gerät oder jeden Gerätetyp beliebig sind. Jeder Modus hat mehrere mögliche Einstellungen, aber jeweils kann nur einer ausgewählt werden. Ein Wäschetrockner kann nicht gleichzeitig im Modus "Zart", "Normal" und "Langzeitbetrieb" sein. Eine Einstellung, die einfach aktiviert oder deaktiviert werden kann, gehört zum Attribut Toggles.
Beispielsweise kann eine Waschmaschine Einstellungen für die Größe und Temperatur des Ladegeräts haben. Beide wären Modi, die voneinander unabhängig sind, aber jeweils nur einen Zustand haben können. Der Nutzer kann einen Modus wie die Temperatur explizit mit einem Befehl wie Stell die Temperatur der Waschmaschine auf kalt einstellen.
Einige Modi sind „in der Reihenfolge“ und können auch mit Auf- und Abwärtspfeilen angepasst werden. Beispielsweise sind Ladegröße (klein, mittel, groß) und Temperatur klar angeordnet (die Temperatur ist kein tatsächlicher Thermostat mit einem numerischen Ziel, wie bei anderen Geräten), die Ladeart (z. B. Feinkost, Normal, Wolle usw.) jedoch möglicherweise nicht.
Diese Eigenschaft deckt einen oder mehrere einzelne Modi ab, die Nutzer festlegen können. Im Allgemeinen sollten diese Modi für Funktionen verwendet werden, die nicht mit anderen Geräten verknüpft sind. Verknüpftes Verhalten, z. B. das Ein- oder Ausschalten des Geräts, sollten spezifischere Merkmale verwenden, z. B. thermostatMode
im Attribut TemperatureSetting.
Gerät ATTRIBUTE
Geräte mit diesem Attribut können im Rahmen des Vorgangs SYNC
die folgenden Attribute melden. Weitere Informationen zum Umgang mit SYNC
-Intents finden Sie unter Intent-Auftragsausführung.
Attribute | Typ | Beschreibung |
---|---|---|
availableModes |
Array |
Erforderlich. Liste der verfügbaren Modi. |
[item, ...] |
Objekt |
Verfügbarer Modus. |
name |
String |
Erforderlich. Interner Name des Modus, der in Befehlen und Status verwendet wird. Diese Funktion kann nicht nutzerfreundlich sein und wird in allen Sprachen verwendet. |
name_values |
Array |
Erforderlich. Synonyme des Modus in jeder unterstützten Sprache. |
[item, ...] |
Objekt |
Synonyme des Modus in einer bestimmten Sprache. |
name_synonym |
Array |
Erforderlich. Synonyme des Modus. Der erste String in dieser Liste wird als kanonischer Name der Ebene in dieser Sprache verwendet. |
[item, ...] |
String |
Synonym name. |
lang |
String |
Erforderlich. Sprachcode (ISO 639-1) Siehe unterstützte Sprachen. |
settings |
Array |
Erforderlich. Unterstützte Einstellungen für diesen Modus. |
[item, ...] |
Objekt |
Unterstützte Einstellung. Mindestens zwei Elemente erforderlich. |
setting_name |
String |
Erforderlich. Interner Name der Einstellung des Modus, der in Befehlen und Status verwendet wird. Diese Funktion kann nicht nutzerfreundlich sein und wird in allen Sprachen verwendet. |
setting_values |
Array |
Erforderlich. Synonyme der Einstellung in den einzelnen unterstützten Sprachen |
[item, ...] |
Objekt |
Synonyme der Einstellung in einer bestimmten Sprache. |
setting_synonym |
Array |
Erforderlich. Synonyme der Einstellung. Der erste String in dieser Liste wird als kanonischer Name der Ebene in dieser Sprache verwendet. |
[item, ...] |
String |
Synonym name. |
lang |
String |
Erforderlich. Sprachcode (ISO 639-1) Siehe unterstützte Sprachen. |
ordered |
Boolesch |
(Standard: Wenn dies auf „true“ gesetzt ist, wird eine zusätzliche Grammatik für die Logik zum Erhöhen oder Verringern in der Reihenfolge (Einstellung) des Einstellungsarrays angewendet. |
commandOnlyModes |
Boolesch |
(Standard: Gibt an, ob das Gerät die Einweg- (wahr) oder Zwei-Wege-Kommunikation (falsch) unterstützt. Legen Sie dieses Attribut auf „true“ fest, wenn das Gerät für einen dieser Merkmale nicht auf einen QUERY-Intent oder einen Berichtsstatus reagieren kann. |
queryOnlyModes |
Boolesch |
(Standard: Erforderlich, wenn das Gerät die Ausführung nur für Abfragen unterstützt. Dieses Attribut gibt an, ob das Gerät nur für Statusinformationen abgefragt werden kann 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 im Nur-Befehl-Modus.
{ "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ät STATES
Geräte mit diesem Attribut können im Rahmen des Vorgangs QUERY
die folgenden Zustände melden. Weitere Informationen zum Umgang mit QUERY
-Intents finden Sie unter Intent-Auftragsausfü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 diesem Attribut können im Rahmen des Vorgangs EXECUTE
auf die folgenden Befehle reagieren. Weitere Informationen zum Umgang mit EXECUTE
-Intents finden Sie unter Intent-Auftragsausführung.
action.devices.commands.SetModes
Moduseinstellungen aktualisieren.
Parameter
Parameter | Typ | Beschreibung |
---|---|---|
updateModeSettings |
Objekt |
Erforderlich. Schlüssel/Wert-Paar mit dem Modus |
<string> |
String |
Neu: |
Beispiele
Hohe Last
{ "command": "action.devices.commands.SetModes", "params": { "updateModeSettings": { "load_mode": "large_load" } } }
Beispieläußerungen
de-DE
-
Stelle
den Staubsauger aufRuhemodus
en-US
-
set
the vacuum toenergy saver mode
es-ES
-
pon
la lavadora en modofrío
fr-FR
-
mets
l'aspirateur ensilencieux
hi-IN
-
वैक्यूम परकार्पेट मोड लगाएं
it-IT
-
imposta
l'aspirapolvere susilenzioso
ja-JP
-
掃除機 を静音 モードに設定して
ko-KR
-
세탁기 세탁량 많음 으로 설정해
pt-BR
-
acionar a função
autolimpeza doaspirador -
ligar o modo de
aquecimento