スマートホームの 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, ...] オブジェクト

食品名。言語フォールバックを提供するには、lang 値が en のアイテムが少なくとも 1 つ必要です。

synonym 配列

必須。

該当する場合は、プリセットの同義語に、単数形と複数形の両方を含める必要があります。

[item, ...] String

プリセットの同義語名。言語フォールバックを提供するには、lang 値が en のアイテムが少なくとも 1 つ必要です。

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

supported_units 属性から取得した、quantity に関連付けられた単位。

「オーブンで焼き始めます。」

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