Schema del tratto Cuoco di Smart Home

action.devices.traits.Cook: questa caratteristica appartiene ai dispositivi in grado di cucinare il cibo in base a varie impostazioni predefinite per alimenti e modalità di cottura supportate.

Esempi di questi tipi di dispositivi includono Multicooker, Pressure cooker, Blender e Microwave. I comandi di cottura possono includere la quantità e il nome dell'alimento, ad esempio "Due tazze di riso integrale", dove "riso integrale" è un preset per alimenti del dispositivo.

Questa caratteristica non gestisce il tempo di cottura o la temperatura di cottura. Per saperne di più, consulta Timer e TemperatureControl.

ATTRIBUTI dispositivo

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

Attributi Tipo Descrizione
supportedCookingModes Array

Obbligatorio.

Modalità di cottura supportate da questo dispositivo.

[item, ...] String

Modalità di cottura.

Valori supportati:

UNKNOWN_COOKING_MODE
BAKE
BEAT
BLEND
BOIL
BREW
BROIL
CONVECTION_BAKE
COOK
DEFROST
DEHYDRATE
FERMENT
FRY
GRILL
KNEAD
MICROWAVE
MIX
PRESSURE_COOK
PUREE
ROAST
SAUTE
SLOW_COOK
SOUS_VIDE
STEAM
STEW
STIR
WARM
WHIP
foodPresets Array

Preset per determinati tipi di alimenti.

[item, ...] Oggetto

Preset per il cibo.

food_preset_name String

Obbligatorio.

Nome interno del preset per alimenti, che verrà utilizzato nei comandi e negli stati. Questo nome può essere poco intuitivo ed è condiviso in tutte le lingue.

supported_units Array

Obbligatorio.

Contiene tutte le unità supportate dal dispositivo per un alimento specifico.

[item, ...] String

Unità supportata.

Valori supportati:

UNKNOWN_UNITS
NO_UNITS
CENTIMETERS
CUPS
DECILITERS
FEET
FLUID_OUNCES
GALLONS
GRAMS
INCHES
KILOGRAMS
LITERS
METERS
MILLIGRAMS
MILLILITERS
MILLIMETERS
OUNCES
PINCH
PINTS
PORTION
POUNDS
QUARTS
TABLESPOONS
TEASPOONS
food_synonyms Array

Obbligatorio.

Sinonimi del nome dell'alimento per il preset in ogni lingua supportata.

[item, ...] Oggetto

Nome dell'alimento. Per fornire il fallback della lingua, è necessario almeno un elemento con un valore lang di en.

synonym Array

Obbligatorio.

I sinonimi del preset devono includere sia la forma singolare che quella plurale, se applicabile.

[item, ...] String

Nome del sinonimo del preset. Per fornire il fallback della lingua, è necessario almeno un elemento con un valore lang di en.

lang String

Obbligatorio.

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

Esempi

Dispositivo con una sola modalità di cottura e nessun preset.

{
  "supportedCookingModes": [
    "BAKE"
  ]
}

Dispositivo con più modalità di cottura e programmi predefiniti per alimenti.

{
  "supportedCookingModes": [
    "COOK",
    "WARM"
  ],
  "foodPresets": [
    {
      "food_preset_name": "white_rice",
      "supported_units": [
        "CUPS"
      ],
      "food_synonyms": [
        {
          "synonym": [
            "White Rice",
            "Rice"
          ],
          "lang": "en"
        }
      ]
    },
    {
      "food_preset_name": "brown_rice",
      "supported_units": [
        "CUPS"
      ],
      "food_synonyms": [
        {
          "synonym": [
            "Brown Rice"
          ],
          "lang": "en"
        }
      ]
    }
  ]
}

STATI del dispositivo

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

Stati Tipo Descrizione
currentCookingMode String

Obbligatorio.

Descrive la modalità di cottura corrente impostata sul dispositivo, dall'attributo supportedCookingModes. Può essere segnalata una sola modalità. Se al momento non è selezionata alcuna modalità, questo valore deve essere impostato su NONE.

currentFoodPreset String

Il food_preset_name del cibo attualmente in cottura nel dispositivo, dall'attributo foodPresets. È possibile segnalare un solo alimento. Se al momento non è selezionato alcun alimento, questo valore deve essere impostato su NONE.

currentFoodQuantity Number

Definisce la quantità attuale di cibo in cottura associata a currentFoodUnit, se è stata specificata una quantità. Non deve essere segnalato se non è in cottura nulla o se non è associata alcuna quantità a questo preset di cibo.

currentFoodUnit String

L'unità associata a currentFoodQuantity, dall'elenco di supported_units del preset.

Esempi

Il mio forno sta cucinando?

{
  "currentCookingMode": "BAKE"
}

Cosa sta cuocendo la mia cuociriso in questo momento?

{
  "currentCookingMode": "COOK",
  "currentFoodPreset": "brown_rice",
  "currentFoodQuantity": 2,
  "currentFoodUnit": "CUPS"
}

COMANDI del dispositivo

I dispositivi con questo tratto potrebbero rispondere ai seguenti comandi nell'ambito dell'operazione EXECUTE. Per saperne di più sulla gestione degli intent EXECUTE, consulta Completamento degli intent.

action.devices.commands.Cook

Avvia o interrompi la cottura.

Parametri

Parametri Tipo Descrizione
start Valore booleano

Obbligatorio.

True per iniziare a cucinare, false per interrompere la modalità di cottura corrente.

cookingMode String

Modalità di cottura richiesta per il dispositivo, dall'attributo supportedCookingModes.

foodPreset String

Il nome del preset alimentare richiesto dall'utente, dall'attributo foodPresets.

quantity Number

La quantità di cibo richiesta dall'utente.

unit String

L'unità associata a quantity, dall'attributo supported_units.

Esempi

Inizia a cuocere in forno.

{
  "command": "action.devices.commands.Cook",
  "params": {
    "start": true,
    "cookingMode": "BAKE"
  }
}

Smetti di cuocere in forno.

{
  "command": "action.devices.commands.Cook",
  "params": {
    "start": false,
    "cookingMode": "BAKE"
  }
}

Inizia a cuocere 2 tazze di riso bianco nella mia cuociriso.

{
  "command": "action.devices.commands.Cook",
  "params": {
    "start": true,
    "cookingMode": "COOK",
    "foodPreset": "white_rice",
    "quantity": 2,
    "unit": "CUPS"
  }
}

ERRORI del dispositivo

Consulta l'elenco completo di errori ed eccezioni.
  • deviceDoorOpen: lo sportello del dispositivo è aperto.
  • deviceLidOpen: il coperchio del dispositivo è aperto.
  • fractionalAmountNotSupported: l'utente ha richiesto un importo frazionario per questo alimento preimpostato, ma non è supportato da questo dispositivo.
  • amountAboveLimit: l'utente ha richiesto una quantità superiore al massimo.
  • unknownFoodPreset - L'utente ha richiesto un programma predefinito per alimenti non supportato dal dispositivo.