歡迎使用 Google Home 開發人員中心,探索全新功能,瞭解如何開發智慧住宅動作。注意:請繼續在「動作」控制台中建立動作。
透過集合功能整理內容 你可以依據偏好儲存及分類內容。

智慧型住宅填充特性結構定義

action.devices.traits.Fill - 此屬性適用於支援填滿裝置 (例如浴缸)。

裝置屬性

具有此特性的裝置可能會在 SYNC 作業中回報下列屬性。如要進一步瞭解如何處理 SYNC 意圖,請參閱意圖執行要求一文。

屬性 類型 說明
availableFillLevels 物件

說明不同的裝置填充程度。

levels 陣列

必填。

層級名稱和語言專屬同義詞清單。

[item, ...] 物件

層級名稱及其語言專屬同義詞。

level_name 字串

必填。

等級的內部名稱。這項功能不容易理解,並且會提供給所有語言。

level_values 陣列

必填。

各個支援語言的同義詞。

[item, ...] 物件

特定語言的同義詞。

level_synonym 陣列

必填。

層級的同義詞。系統會將這個清單的第一個字串用做該語言的層級標準名稱。

[item, ...] 字串

同義詞名稱。

lang 字串

必填。

語言代碼 (ISO 639-1)。詳情請參閱支援的語言

ordered 布林

必填。

設為 true 時,裝置會處理額外的文法,用於增加或減少邏輯,如 levels 陣列表示 (例如為半階)。

supportsFillPercent 布林

(預設:false)

如為 true,則接受將等級調整成百分比的指令。

範例

具有基本填滿或排水功能且不支援離散填滿程度的裝置。

{}

支援離散填充等級的裝置。

{
  "availableFillLevels": {
    "levels": [
      {
        "level_name": "half_level",
        "level_values": [
          {
            "level_synonym": [
              "half",
              "half way",
              "one half"
            ],
            "lang": "en"
          }
        ]
      },
      {
        "level_name": "full_level",
        "level_values": [
          {
            "level_synonym": [
              "full",
              "all the way",
              "complete"
            ],
            "lang": "en"
          }
        ]
      }
    ],
    "ordered": true
  }
}

裝置狀態:STATE

具有此特性的裝置可能會在 QUERY 作業中回報下列狀態。如要進一步瞭解如何處理 QUERY 意圖,請參閱意圖執行要求一文。

類型 說明
isFilled 布林

必填。

如果裝置填充任何關卡,則傳回 True。如果裝置完全耗盡,會傳回 False。

currentFillLevel 字串

如有設定 availableFillLevels 屬性,則為必要屬性。用於表示裝置填入的 availableFillLevels 屬性目前的 level_name

currentFillPercent Number

如有設定 supportsFillPercent 屬性,則為必要屬性。表示目前的填充程度百分比。

範例

浴缸的水已填滿嗎?

{
  "isFilled": true
}

浴缸的水已裝滿嗎?(含等級)。

{
  "isFilled": true,
  "currentFillLevel": "half_level"
}

裝置指令

具有此特性的裝置可能會在 EXECUTE 作業中回應下列指令。如要進一步瞭解如何處理 EXECUTE 意圖,請參閱意圖執行要求一文。

action.devices.commands.Fill

將裝置填滿或清空。

參數

參數 類型 說明
fill 布林

必填。

傳回 True,設為 False 可排除。

fillLevel 字串

用於指定要設定的 availableFillLevels 屬性中的 level_name。如果未指定,請填入預設級別。

fillPercent Number

表示要求的等級百分比。

範例

加裝浴缸

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true
  }
}

為浴缸排水

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": false
  }
}

在浴缸的水槽上加油

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "half_level"
  }
}

將浴缸的供應量加一 (必須將 ordered 屬性設為 true)。

{
  "command": "action.devices.commands.Fill",
  "params": {
    "fill": true,
    "fillLevel": "full_level"
  }
}

裝置錯誤:ERRORS

請參閱錯誤和例外狀況的完整清單。