Schemat funkcji inteligentnego gotowania

action.devices.traits.Cook – ta cecha należy do urządzeń, które mogą gotować jedzenie według różnych gotowych ustawień i obsługiwanych trybów gotowania.

Przykłady tych typów urządzeń: Multicooker, Pressure cooker, Blender i Microwave. Polecenia gotowania mogą obejmować ilość i nazwę jedzenia, na przykład „Dwie szklanki brązowego ryżu”, gdzie „brązowy ryż” to gotowe ustawienie jedzenia dla urządzenia.

Ta cecha nie dotyczy czasu gotowania ani temperatury gotowania. Więcej informacji znajdziesz na stronach Timer i TemperatureControl.

Urządzenie ATTRIBUTES

Urządzenia z tą cechą mogą zgłaszać poniższe atrybuty w ramach operacji SYNC. Więcej informacji o obsłudze intencji SYNC znajdziesz w artykule o realizacji intencji.

Atrybuty Typ Opis
supportedCookingModes Tablica

Wymagane.

Tryby gotowania obsługiwane przez to urządzenie.

[item, ...] String

Tryb gotowania.

Obsługiwane wartości:

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 Tablica

Gotowe ustawienia dla określonych rodzajów jedzenia.

[item, ...] Obiekt

Gotowe ustawienia jedzenia.

food_preset_name String

Wymagane.

Wewnętrzna nazwa gotowego ustawienia jedzenia, która będzie używana w poleceniach i stanach. Ta nazwa może być nieprzyjazna dla użytkownika i jest wspólna dla wszystkich języków.

supported_units Tablica

Wymagane.

Zawiera wszystkie jednostki obsługiwane przez urządzenie dla danego jedzenia.

[item, ...] String

Obsługiwana jednostka.

Obsługiwane wartości:

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 Tablica

Wymagane.

Synonimy nazwy gotowego jedzenia w każdym obsługiwanym języku.

[item, ...] Obiekt

Nazwa pokarmu.

synonym Tablica

Wymagane.

Synonimy gotowego ustawienia powinny obejmować zarówno formy liczby pojedynczej, jak i mnogiej, jeśli mają zastosowanie.

[item, ...] String

Wstępnie ustawiona nazwa synonimu.

lang String

Wymagane.

Kod języka (ISO 639-1). Zobacz obsługiwane języki.

Przykłady

Urządzenie z tylko 1 trybem gotowania i bez gotowych ustawień.

{
  "supportedCookingModes": [
    "BAKE"
  ]
}

Urządzenie z wieloma trybami gotowania i gotowymi ustawieniami.

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

Urządzenie STATES

Encje z tą cechą mogą zgłaszać poniższe stany w ramach operacji QUERY. Więcej informacji o obsłudze intencji QUERY znajdziesz w artykule o realizacji intencji.

Stany Typ Opis
currentCookingMode String

Wymagane.

Opisuje bieżący tryb gotowania ustawiony na urządzeniu z listy atrybutu supportedCookingModes. Można zgłosić tylko jeden tryb. Jeśli nie jest obecnie wybrany żaden tryb, ta opcja powinna mieć wartość BRAK.

currentFoodPreset String

Opisuje aktualnie gotowanie na urządzeniu, z listy atrybutu foodPresets. Można zgłosić tylko jedno jedzenie. Jeśli nie wybrano jedzenia, to pole powinno mieć wartość BRAK.

currentFoodQuantity Number

Określa bieżącą ilość gotowania powiązanych z elementem currentFoodUnit (jeśli została określona). Nie należy zgłaszać, jeśli obecnie nic nie jest gotowe lub jeśli nie podano ilości jedzenia.

currentFoodUnit String

Jednostka powiązana z atrybutem currentFoodQuantity, z listy atrybutów supported_units.

Przykłady

Czy mój piekarnik gotuje coś?

{
  "currentCookingMode": "BAKE"
}

Co teraz gotuje w moim garnku do ryżu?

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

CommandS na urządzeniu

Urządzenia z tą cechą mogą reagować na podane niżej polecenia w ramach operacji EXECUTE. Więcej informacji o obsłudze intencji EXECUTE znajdziesz w artykule o realizacji intencji.

action.devices.commands.Cook

Rozpocznij lub zatrzymaj gotowanie.

Parametry

Parametry Typ Opis
start Wartość logiczna

Wymagane.

Prawda, aby rozpocząć gotowanie, lub false, aby zatrzymać bieżący tryb gotowania.

cookingMode String

Żądany tryb gotowania na urządzeniu z atrybutu supportedCookingModes.

foodPreset String

Nazwa gotowego ustawienia jedzenia żądanego przez użytkownika z atrybutu foodPresets.

quantity Number

Ilość jedzenia zamówiona przez użytkownika.

unit String

Jednostka powiązana z atrybutem quantity (z atrybutu supported_units).

Przykłady

Zacznij piec w piekarniku.

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

Przestań piec w piekarniku.

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

Zaczynam gotować 2 szklanki białego ryżu w piekarniku do ryżu.

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

Urządzenie ERRORS

Zobacz pełną listę błędów i wyjątków.
  • deviceDoorOpen – drzwi urządzenia są otwarte.
  • deviceLidOpen – pokrywa urządzenia jest otwarta.
  • fractionalAmountNotSupported – użytkownik poprosił o podanie ilości ułamkowej dla tego gotowego ustawienia jedzenia, ale to urządzenie nie obsługuje tej wartości.
  • amountAboveLimit – użytkownik zażądał ilości, która przekraczała maksymalną wartość.
  • unknownFoodPreset – użytkownik poprosił o gotowe ustawienie jedzenia, które nie jest obsługiwane przez urządzenie.