Схема навыков умного домашнего повара

action.devices.traits.Cook — эта черта принадлежит устройствам, которые могут готовить еду в соответствии с различными предустановками и поддерживаемыми режимами приготовления.

Примеры этих типов устройств: Multicooker , Pressure cooker , Blender и Microwave . Команды приготовления могут включать количество и название продукта, например «Две чашки коричневого риса», где «коричневый рис» — это предустановка блюда для устройства.

Эта черта не влияет на время приготовления или температуру приготовления. Дополнительную информацию см. в разделе Timer и TemperatureControl .

АТРИБУТЫ устройства

Устройства с этой характеристикой могут сообщать следующие атрибуты в рамках операции SYNC . Дополнительные сведения об обработке намерений SYNC см. в разделе Выполнение намерений .

Атрибуты Тип Описание
supportedCookingModes Множество

Необходимый.

Режимы приготовления, поддерживаемые данным устройством.

[ item, ... ] Нить

Режим приготовления.

Поддерживаемые значения:

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 Множество

Предустановки для определенных видов еды.

[ item, ... ] Объект

Предустановка еды.

food_preset_name Нить

Необходимый.

Внутреннее имя пресета питания, которое будет использоваться в командах и состояниях. Это имя может быть неудобным для пользователя и используется на всех языках.

supported_units Множество

Необходимый.

Содержит все единицы измерения, поддерживаемые устройством для конкретного продукта питания.

[ item, ... ] Нить

Поддерживаемый блок.

Поддерживаемые значения:

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 Множество

Необходимый.

Синонимы названий блюд для предустановки на каждом поддерживаемом языке.

[ item, ... ] Объект

Название еды.

synonym Множество

Необходимый.

Синонимы для предустановки должны включать формы как единственного, так и множественного числа, если это применимо.

[ item, ... ] Нить

Предустановленное имя синонима.

lang Нить

Необходимый.

Код языка (ISO 639-1). См. поддерживаемые языки .

Примеры

Устройство только с одним режимом приготовления и без предустановок.

{
  "supportedCookingModes": [
    "BAKE"
  ]
}

Устройство с несколькими режимами приготовления и предустановками блюд.

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

СОСТОЯНИЯ устройства

Сущности с этим признаком могут сообщать о следующих состояниях как часть операции QUERY . Дополнительные сведения об обработке намерений QUERY см. в разделе Выполнение намерений .

состояния Тип Описание
currentCookingMode Нить

Необходимый.

Описывает текущий режим приготовления, установленный на устройстве, из списка supportedCookingModes атрибутовCookingModes. Можно сообщить только об одном режиме. Если в данный момент режим не выбран, для него должно быть установлено значение NONE.

currentFoodPreset Нить

Описывает текущий процесс приготовления пищи на устройстве из списка атрибутов foodPresets . Можно указать только один продукт питания. Если в данный момент еда не выбрана, для этого параметра должно быть установлено значение NONE.

currentFoodQuantity Число

Определяет текущий объем приготовления пищи, связанный с currentFoodUnit , если было указано количество. Не следует сообщать, если в данный момент ничего не готовится или если с этой предустановкой блюда не связано количество.

currentFoodUnit Нить

Единица измерения, связанная с currentFoodQuantity из списка атрибута supported_units .

Примеры

Моя духовка готовит?

{
  "currentCookingMode": "BAKE"
}

Что сейчас готовится в моей рисоварке?

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

КОМАНДЫ устройства

Устройства с этой особенностью могут реагировать на следующие команды в рамках операции EXECUTE . Дополнительные сведения об обработке намерений EXECUTE см. в разделе Выполнение намерения .

action.devices.commands.Cook

Начать или остановить приготовление.

Параметры

Параметры Тип Описание
start логическое значение

Необходимый.

True, чтобы начать приготовление, false, чтобы остановить текущий режим приготовления.

cookingMode Нить

Запрошенный режим приготовления для устройства из атрибута supportedCookingModes .

foodPreset Нить

Имя набора блюд, запрошенное пользователем, из атрибута foodPresets .

quantity Число

Количество еды, запрошенное пользователем.

unit Нить

Единица измерения, связанная с quantity из атрибута supported_units .

Примеры

Начала печь в моей духовке.

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

Хватит печь в моей духовке.

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

Начните готовить 2 чашки белого риса в рисоварке.

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

ОШИБКИ устройства

Полный список ошибок и исключений смотрите .
  • deviceDoorOpen — Дверца устройства открыта.
  • deviceLidOpen — крышка устройства открыта.
  • fractionalAmountNotSupported – пользователь запросил дробное количество для этой настройки еды, но оно не поддерживается этим устройством.
  • amountAboveLimit — пользователь запросил количество, превышающее максимальное.
  • unknownFoodPreset — пользователь запросил предустановку блюд, не поддерживаемую устройством.