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

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

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

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

デバイスの属性

このトレイトを持つデバイスは、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)。サポートされている言語をご覧ください。

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

currentFoodPreset 文字列

foodPresets 属性のリストから、デバイス内で現在調理されている食品を示します。食品は 1 つのみ報告できます。食品が選択されていない場合は、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 - ユーザーがデバイスでサポートされていないフード プリセットを要求しました。