Smart Home-Modi – Trait-Schema

action.devices.traits.Modes: Dieses Merkmal umfasst alle verfügbaren Modi und modusspezifischen Einstellungen für ein Gerät.

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 beliebig und für jedes Gerät oder jeden Gerätetyp eindeutig sind. Jeder Modus hat mehrere mögliche Einstellungen, aber es kann jeweils nur eine ausgewählt werden. Ein Trockner kann nicht gleichzeitig im Modus „Schonend“, „Normal“ und „Stark“ betrieben werden. Eine Einstellung, die einfach aktiviert oder deaktiviert werden kann, gehört zum Toggles-Trait.

Eine Waschmaschine kann beispielsweise Einstellungen für die Ladungsmenge und die Temperatur haben. Beide wären Modi, da sie unabhängig voneinander sind, aber jeder kann jeweils nur einen Zustand haben. Der Nutzer kann einen Modus wie die Temperatur explizit mit einem Befehl wie Stelle die Temperatur der Waschmaschine auf kalt ein. festlegen.

Einige Modi sind „geordnet“ und können auch mit den Begriffen „erhöhen“/„verringern“ angepasst werden. Beispiele sind die Beladungsgröße (klein, mittel, groß) und die Temperatur, die eindeutig geordnet sind. Die Temperatur ist jedoch kein tatsächlicher Thermostat mit einem numerischen Zielwert wie bei anderen Geräten. Der Beladungstyp (Feinwäsche, normal, Wolle usw.) ist möglicherweise nicht geordnet.

Dieses Attribut umfasst einen oder mehrere einzelne Modi, die Nutzer festlegen können. Im Allgemeinen sollten diese Modi für Funktionen verwendet werden, die nicht mit dem Verhalten anderer Geräte verknüpft sind. Für verknüpftes Verhalten, z. B. das Ein- oder Ausschalten des Geräts selbst, sollten spezifischere Eigenschaften verwendet werden (z. B. thermostatMode in der Eigenschaft TemperatureSetting).

Geräteattribute

Geräte mit diesem Merkmal können die folgenden Attribute als Teil des Vorgangs SYNC melden. Weitere Informationen zum Umgang mit SYNC-Intents finden Sie unter Intent-Fulfillment.

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. Das ist nicht nutzerfreundlich und wird in allen Sprachen angezeigt.

name_values Array

Erforderlich.

Synonyme des Modus in den einzelnen unterstützten Sprachen.

[item, ...] Objekt

Synonyme des Modus in einer bestimmten Sprache. Mindestens ein Artikel mit dem lang-Wert en ist erforderlich, um einen Sprach-Fallback zu ermöglichen.

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. Mindestens ein Artikel mit dem lang-Wert en ist erforderlich, um einen Sprach-Fallback zu ermöglichen.

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, die in Befehlen und Status verwendet wird. Das ist nicht nutzerfreundlich und wird in allen Sprachen angezeigt.

setting_values Array

Erforderlich.

Synonyme der Einstellung in jeder unterstützten Sprache.

[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). Unterstützte Sprachen

ordered Boolesch

(Standardeinstellung: false)

Wenn diese Option auf „true“ gesetzt ist, wird zusätzliche Grammatik für die Logik zum Erhöhen/Verringern in der Reihenfolge (aufsteigend) des Einstellungsarrays angewendet.

commandOnlyModes Boolesch

(Standardeinstellung: false)

Gibt an, ob das Gerät die Einwegkommunikation (true) oder die Zweiwegkommunikation (false) unterstützt. Setzen Sie dieses Attribut auf „true“, wenn das Gerät nicht auf einen QUERY-Intent oder einen „Status melden“-Intent für dieses Merkmal reagieren kann.

queryOnlyModes Boolesch

(Standardeinstellung: false)

Erforderlich, wenn das Gerät die reine Abfrageausführung unterstützt. Dieses Attribut gibt an, ob der Gerätestatus nur abgefragt und das Gerät 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 Nur-Befehl-Modi:

{
  "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

Für Entitäten mit diesem Merkmal können im Rahmen des Vorgangs QUERY die folgenden Status gemeldet werden. Weitere Informationen zum Umgang mit QUERY-Intents finden Sie unter Intent-Fulfillment.

Bundesstaaten Typ Beschreibung
currentModeSettings Objekt

Erforderlich.

Schlüssel/Wert-Paar mit dem Modus name des Geräts als Schlüssel und dem aktuellen setting_name als Wert.

<string> String

Aktuell: setting_name.

Beispiele

In welchem Modus befindet sich das Gerät?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

GERÄTEBEFEHLE

Geräte mit diesem Merkmal können im Rahmen des Vorgangs EXECUTE auf die folgenden Befehle reagieren. Weitere Informationen zum Umgang mit EXECUTE-Intents finden Sie unter Intent-Fulfillment.

action.devices.commands.SetModes

Aktualisieren Sie die Einstellungen für den Modus.

Parameter

Parameter Typ Beschreibung
updateModeSettings Objekt

Erforderlich.

Schlüssel/Wert-Paar mit dem Modus name des Geräts als Schlüssel und dem neuen setting_name als Wert.

<string> String

Neu: setting_name.

Beispiele

Auf große Last einstellen:

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

Beispieläußerungen

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • set the vacuum to energy saver mode

es-ES

  • pon la lavadora en modo frío

fr-FR

  • mets l'aspirateur en silencieux

hi-IN

  • वैक्यूम पर कार्पेट मोड लगाएं

it-IT

  • imposta l'aspirapolvere su silenzioso

ja-JP

  • 掃除機 静音 モードに設定して

ko-KR

  • 세탁기 세탁량 많음 으로 설정해

pt-BR

  • acionar a função autolimpeza do aspirador
  • ligar o modo de aquecimento

GERÄTEFEHLER

Vollständige Liste der Fehler und Ausnahmen