Schema degli attributi di riempimento per la smart home

action.devices.traits.Fill: questa funzionalità si applica ai dispositivi che supportano il riempimento, ad esempio una vasca da bagno.

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
availableFillLevels Oggetto

Descrive i diversi livelli di riempimento del dispositivo.

levels Array

Obbligatorio.

Elenco di nomi di livello e sinonimi specifici per lingua.

[item, ...] Oggetto

Nome del livello e relativi sinonimi specifici per lingua.

level_name String

Obbligatorio.

Nome interno del livello. Questo approccio può non essere intuitivo e verrà condiviso in tutte le lingue.

level_values Array

Obbligatorio.

Sinonimi del livello in ogni lingua supportata.

[item, ...] Oggetto

Sinonimi del livello in una determinata lingua.

level_synonym Array

Obbligatorio.

Sinonimo del livello. 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

Obbligatorio.

Se impostato su true, il dispositivo gestisce una grammatica aggiuntiva per la logica di aumento o diminuzione, come rappresentato dall'array levels (ad esempio, metà livello).

supportsFillPercent Valore booleano

(Valore predefinito: false)

Se il valore è true, accetta i comandi per impostare il livello su una percentuale.

Esempi

Dispositivo con funzionalità di riempimento o svuotamento di base che non supporta livelli di riempimento discreti.

{}

Dispositivo che supporta livelli di riempimento discreti.

{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "Half",
              "Half way",
              "One half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "Full",
              "All the way",
              "Complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}

STATI del dispositivo

Le entità con questo tratto 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
isFilled Valore booleano

Obbligatorio.

True se il dispositivo è riempito a qualsiasi livello. False se il dispositivo è completamente scarico.

currentFillLevel String

Obbligatorio se è impostato l'attributo availableFillLevels. Indica il valore level_name corrente dell'attributo availableFillLevels in cui viene compilato il dispositivo.

currentFillPercent Number

Obbligatorio se è impostato l'attributo supportsFillPercent. Indica la percentuale di livello di riempimento attuale.

Esempi

La vasca è piena?

{
  "isFilled": true
}

La vasca è piena? (con livelli).

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

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.Fill

Riempi o svuota il dispositivo.

Parametri

Parametri Tipo Descrizione
fill Valore booleano

Obbligatorio.

True per riempire, false per svuotare.

fillLevel String

Indica il valore level_name dell'attributo availableFillLevels da impostare. Se non specificato, viene inserito il livello predefinito.

fillPercent Number

Indica la percentuale di livello richiesta.

Esempi

Riempi la vasca da bagno.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

Svuota la vasca da bagno.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}

Riempi la vasca da bagno fino a metà.

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}

Aumenta il livello di riempimento della vasca da bagno di uno (richiede che l'attributo ordered sia true).

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

ERRORI dispositivo

Consulta l'elenco completo di errori ed eccezioni.