スマートホームの Cook トレイトのスキーマ

action.devices.traits.Cook - このトレイトは、さまざまなフード プリセットやサポートされている調理モードで調理できるデバイスに使用します。

これらのデバイスタイプの例としては、MulticookerPressure cookerBlenderMicrowave などがあります。調理コマンドには、「カップ 2 杯の玄米」など、食品の量と名前を含めることができます。ここで、「玄米」はデバイスのフード プリセットです。

このトレイトは調理時間や調理温度を処理しません。詳細については、TimerTemperatureControl をご覧ください。

デバイスの属性

このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理について詳しくは、インテント フルフィルメントをご覧ください。

属性 タイプ 説明
supportedCookingModes 配列

必須。

このデバイスでサポートされている調理モード。

[item, ...] String

調理モード。

サポートされている値:

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 String

必須。

フード プリセットの内部名。コマンドとステータスで使用されます。これは、ユーザー フレンドリーな名前とは限らず、すべての言語に共通です。

supported_units 配列

必須。

特定の食品について、デバイスでサポートされているすべての単位が含まれています。

[item, ...] String

サポートされている単位。

サポートされている値:

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, ...] String

プリセットの類義語名。

lang String

必須。

言語コード(ISO 639-1)。サポートされている言語をご覧ください。

調理モードが 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 String

必須。

supportedCookingModes 属性から、デバイスに設定されている現在の調理モードを示します。モードは 1 つのみ報告できます。モードが選択されていない場合は、NONE に設定する必要があります。

currentFoodPreset String

foodPresets 属性から、デバイス内で現在調理されている食品の food_preset_name。食品は 1 つのみ報告できます。食品が選択されていない場合は、NONE に設定する必要があります。

currentFoodQuantity 数値

数量が指定されている場合は、currentFoodUnit に関連付けられた現在の調理量を定義します。何も調理されていない場合やこのフード プリセットに関連付けられた量が存在しない場合は、報告しないようにする必要があります。

currentFoodUnit String

プリセットの supported_units のリストから、currentFoodQuantity に関連付けられた単位。

オーブンは調理中ですか?

{
  "currentCookingMode": "BAKE"
}

炊飯器で今調理しているものは何?

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

デバイスのコマンド

このトレイトを持つデバイスは、EXECUTE オペレーションの一部として次のコマンドに応答する場合があります。EXECUTE インテントの処理の詳細については、インテントのフルフィルメントをご覧ください。

action.devices.commands.Cook

調理を開始または停止する。

パラメータ

パラメータ タイプ 説明
start ブール値

必須。

調理を開始する場合は true、現在の調理モードを停止する場合は false。

cookingMode String

デバイスに要求された調理モード(supportedCookingModes 属性)。

foodPreset String

ユーザーが要求したフード プリセットの名前(foodPresets 属性)。

quantity 数値

ユーザーが要求した食品の量。

unit String

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 - ユーザーがデバイスでサポートされていないフード プリセットを要求しました。