スマートホームの Cook トレイトのスキーマ
action.devices.traits.Cook - このトレイトは、さまざまなフード プリセットやサポートされている調理モードで調理が可能なデバイスに使用します。
これらのデバイスタイプの例としては、Multicooker、Pressure cooker、Blender、Microwave などがあります。調理コマンドには、「カップ 2 杯分の玄米」などの食品の量や名前を含めることができます。ここで、「玄米」はデバイスのフード プリセットです。
このトレイトは調理時間や調理温度を処理しません。詳細については、Timer と TemperatureControl をご覧ください。
デバイスの属性
このトレイトを持つデバイスは、SYNC オペレーションの一部として次の属性を報告できます。SYNC インテントの処理について詳しくは、インテントのフルフィルメントをご覧ください。
| 属性 | タイプ | 説明 | 
|---|---|---|
supportedCookingModes | 
    配列 | 
       必須。 このデバイスでサポートされる調理モード。  | 
  
[item, ...] | 
    String | 
       調理モード。 サポートされている値: 
  | 
  
foodPresets | 
    配列 | 
       特定の種類の食品のプリセット。  | 
  
[item, ...] | 
    オブジェクト | 
       料理のプリセット。  | 
  
food_preset_name | 
    String | 
       必須。 フード プリセットの内部名。コマンドとステータスで使用されます。これは、ユーザー フレンドリーな名前とは限らず、すべての言語に共通です。  | 
  
supported_units | 
    配列 | 
       必須。 特定の食品用にデバイスでサポートされているすべての単位が含まれます。  | 
  
[item, ...] | 
    String | 
       サポートされている単位。 サポートされている値: 
  | 
  
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 | 
       必須。 
  | 
  
currentFoodPreset | 
    String | 
       
  | 
  
currentFoodQuantity | 
    数値 | 
       量が指定されている場合は、  | 
  
currentFoodUnit | 
    String | 
       プリセットの   | 
  
例
オーブンは調理中ですか?
{
  "currentCookingMode": "BAKE"
}炊飯器で今調理しているものは何?
{
  "currentCookingMode": "COOK",
  "currentFoodPreset": "brown_rice",
  "currentFoodQuantity": 2,
  "currentFoodUnit": "CUPS"
}デバイスのコマンド
このトレイトを持つデバイスは、EXECUTE オペレーションの一部として次のコマンドに応答できます。EXECUTE インテントの処理について詳しくは、インテントのフルフィルメントをご覧ください。
action.devices.commands.Cook
料理を開始または停止します。
パラメータ
| パラメータ | タイプ | 説明 | 
|---|---|---|
start | 
    ブール値 | 
       必須。 調理を開始する場合は true、現在の調理モードを停止する場合は false。  | 
  
cookingMode | 
    String | 
       
  | 
  
foodPreset | 
    String | 
       
  | 
  
quantity | 
    数値 | 
       ユーザーが要求した食品の量。  | 
  
unit | 
    String | 
       
  | 
  
例
「オーブンで焼き始めます。」
{
  "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- ユーザーがデバイスでサポートされていないフード プリセットを要求しました。