Schema del tratto Modalità smart home

action.devices.traits.Modes: questo attributo copre tutte le modalità disponibili e le impostazioni specifiche per ogni modalità di un dispositivo.

Questa caratteristica appartiene a qualsiasi dispositivo con un numero arbitrario di modalità "n-way" in cui le modalità e le impostazioni per ogni modalità sono arbitrarie e univoche per ogni dispositivo o tipo di dispositivo. Ogni modalità ha più impostazioni possibili, ma è possibile selezionarne una alla volta. Un'asciugatrice non può essere contemporaneamente in modalità "delicata", "normale" e "pesante". Un'impostazione che può essere attivata o disattivata appartiene al tratto Toggles.

Ad esempio, una lavatrice può avere impostazioni per la dimensione del carico e la temperatura. Entrambe sono modalità perché sono indipendenti l'una dall'altra, ma ciascuna può essere in un solo stato alla volta. L'utente può impostare una modalità come la temperatura esplicitamente con un comando come Imposta la temperatura della lavatrice su freddo.

Alcune modalità sono "ordinate" e possono essere regolate anche con i comandi su/giù, aumento/diminuzione. Ad esempio, le dimensioni del carico (piccolo, medio, grande) e la temperatura sono chiaramente ordinate (tieni presente che la temperatura non è un vero e proprio termostato con un target numerico, come su altri dispositivi), ma il tipo di carico (delicati, normale, lana e così via) potrebbe non esserlo.

Questo tratto copre una o più singole modalità che gli utenti possono impostare. In generale, queste modalità devono essere utilizzate per le funzionalità scollegate dal comportamento di altri dispositivi. Il comportamento collegato, ad esempio l'accensione o lo spegnimento del dispositivo stesso, deve utilizzare tratti più specifici (ad esempio thermostatMode nel tratto TemperatureSetting).

ATTRIBUTI del dispositivo

I dispositivi con questa caratteristica possono segnalare i seguenti attributi nell'ambito dell'operazione SYNC. Per scoprire di più sulla gestione degli intent SYNC, consulta Adempimento degli intent.

Attributi Tipo Descrizione
availableModes Array

Obbligatorio.

Elenco delle modalità disponibili.

[item, ...] Oggetto

Modalità Disponibile.

name String

Obbligatorio.

Nome interno della modalità, che verrà utilizzato in comandi e stati. Questo approccio può non essere user-friendly e verrà condiviso in tutte le lingue.

name_values Array

Obbligatorio.

Sinonimi della modalità in ogni lingua supportata.

[item, ...] Oggetto

Sinonimi della modalità in una determinata lingua.

name_synonym Array

Obbligatorio.

Sinonimi della modalità. La prima stringa in questo elenco viene utilizzata come nome canonico del livello nella lingua in questione.

[item, ...] String

Nome del sinonimo.

lang String

Obbligatorio.

Codice lingua (ISO 639-1). Consulta le lingue supportate.

settings Array

Obbligatorio.

Impostazioni supportate per questa modalità.

[item, ...] Oggetto

Impostazione supportata.

Sono necessari almeno 2 elementi.

setting_name String

Obbligatorio.

Nome interno dell'impostazione della modalità, che verrà utilizzato in comandi e stati. Questo approccio può non essere user-friendly e verrà condiviso in tutte le lingue.

setting_values Array

Obbligatorio.

Sinonimi dell'impostazione in ogni lingua supportata.

[item, ...] Oggetto

Sinonimi dell'impostazione in una determinata lingua.

setting_synonym Array

Obbligatorio.

Sinonimi dell'impostazione. La prima stringa in questo elenco viene utilizzata come nome canonico del livello nella lingua in questione.

[item, ...] String

Nome del sinonimo.

lang String

Obbligatorio.

Codice lingua (ISO 639-1). Consulta le lingue supportate.

ordered Valore booleano

(valore predefinito: false)

Se questo valore è impostato su true, verrà applicata una grammatica aggiuntiva per la logica di aumento/diminuzione, nell'ordine (crescente) dell'array delle impostazioni.

commandOnlyModes Valore booleano

(valore predefinito: false)

Indica se il dispositivo supporta la comunicazione unidirezionale (true) o bidirezionale (false). Imposta questo attributo su true se il dispositivo non può rispondere a un intento QUERY o a uno stato Report per questa caratteristica.

queryOnlyModes Valore booleano

(valore predefinito: false)

Obbligatorio se il dispositivo supporta l'esecuzione solo di query. Questo attributo indica se è possibile eseguire query sul dispositivo solo per informazioni sullo stato e non può essere controllato.

Esempi

Dispositivo con più modalità e impostazioni.

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

Dispositivo con modalità solo comando.

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

STATI del dispositivo

Le entità con questo attributo possono segnalare i seguenti stati nell'ambito dell'operazione QUERY. Per scoprire di più sulla gestione degli intent QUERY, consulta Adempimento degli intent.

Stati Tipo Descrizione
currentModeSettings Oggetto

Obbligatorio.

Coppia chiave/valore con la modalità name del dispositivo come chiave e il valore setting_name corrente.

<string> String

Attuale: setting_name.

Esempi

In quale modalità è il dispositivo?

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

COMANDI del dispositivo

I dispositivi con questa caratteristica possono rispondere ai seguenti comandi nell'ambito dell'operazione EXECUTE. Per scoprire di più sulla gestione degli intent EXECUTE, consulta Adempimento degli intent.

action.devices.commands.SetModes

Aggiorna le impostazioni della modalità.

Parametri

Parametri Tipo Descrizione
updateModeSettings Oggetto

Obbligatorio.

Coppia chiave/valore con la modalità name del dispositivo come chiave e il nuovo setting_name come valore.

<string> String

Nuovo setting_name.

Esempi

Imposta la lavatrice su carico grande.

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

Frasi di esempio

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

ERRORI del dispositivo

Consulta l'elenco completo di errori ed eccezioni.