歡迎來到 Google Home 開發人員中心,你可以在這裡學習如何學習智慧型住宅動作。注意事項:您將在 Actions 主控台建構動作。

智慧型住宅烹飪結構定義

action.devices.traits.Cook - 這個特性代表裝置本身可以根據多種預設食材和烹飪模式烹調餐點。

這類裝置類型的範例包括 MulticookerPressure 炊具BlenderMicrowave。烹飪指令可能包括食物的數量和名稱,例如「雙杯咖啡」,

這項特性無法處理烹飪時間或烹飪溫度。 詳情請參閱「計時器」和「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 屬性清單中說明裝置上目前的烹飪模式。我們可能只會回報一種模式。如果目前未選取任何模式,則應設為「無」。

currentFoodPreset 字串

根據 foodPresets 屬性清單,在裝置上描述目前的食物烹飪。只能回報一份食物。如果未選擇食物,應設為 NONE。

currentFoodQuantity Number

定義與 currentFoodUnit 相關聯的食物烹飪量 (如有指定數量)。如果目前並沒有烹飪,或是與這個食物預設設定無關數量,系統就不應該回報。

currentFoodUnit 字串

supported_units 屬性清單中與 currentFoodQuantity 相關聯的單位。

範例

我的烤箱是否烹飪?

{
  "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 Number

使用者要求的食物數量。

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

裝置 ERRORS

請參閱錯誤和例外狀況的完整清單。
  • deviceDoorOpen:裝置的門是開著。
  • deviceLidOpen - 裝置的機蓋已開啟。
  • fractionalAmountNotSupported - 使用者要求小量的預設餐點,但這部裝置不支援該金額。
  • amountAboveLimit:使用者要求的數量超過上限。
  • unknownFoodPreset:使用者要求裝置不支援的食物預設設定。