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

智慧住宅模式特性結構定義

action.devices.traits.Modes - 此屬性涵蓋裝置的所有可用模式和模式專屬設定。

此屬性屬於任意任意數量的「雙向道」模式,其中每種模式的模式和設定在任何裝置或裝置類型上是任意的專屬。每種模式都有多種可能的設定,但一次只能選取一項設定。烘乾機不得同時採用「穩定」、「正常」和「重型」模式。可開啟或關閉的設定,屬於「Toggles」特徵。

舉例來說,洗衣機可以設定負載和溫度設定。 這兩種模式都可以彼此獨立,但一次只能分別處於一種狀態。使用者可以透過類似將洗衣機的溫度設為冷氣等指令,明確設定溫度等模式。

部分模式屬於「已排序」,亦可透過向上/向下、增加/減少:舉例來說,載入大小 (小、中、大) 和溫度都有明確排序 (請注意,溫度不是像數字目標的實際溫度一樣,不會像其他裝置一樣),但載入類型 (熱度、正常、羊毛等) 可能不會有影響。

此屬性涵蓋一或多個使用者可以設定的個別模式。一般來說,這些模式應用於與其他裝置行為取消連結的功能。已連結行為 (例如開啟或關閉裝置),應使用更具體的特性 (例如,特性 TemperatureSetting 中的 thermostatMode)。

裝置屬性

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

屬性 類型 說明
availableModes 陣列

必填。

可用模式清單。

[item, ...] 物件

可用的模式。

name String

必填。

模式的內部名稱,將在指令和狀態中使用。這項功能不容易理解,並且會提供給所有語言。

name_values 陣列

必填。

每種支援的語言的模式同義詞。

[item, ...] 物件

特定語言的模式同義詞。

name_synonym 陣列

必填。

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

[item, ...] String

同義詞名稱。

lang String

必填。

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

settings 陣列

必填。

這個模式支援的設定。

[item, ...] 物件

支援的設定。

至少要有 2 個項目。

setting_name String

必填。

模式設定的內部名稱,將在指令和狀態中使用。這項功能不容易理解,並且會提供給所有語言。

setting_values 陣列

必填。

各個支援語言的設定同義詞。

[item, ...] 物件

特定語言的設定同義詞。

setting_synonym 陣列

必填。

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

[item, ...] String

同義詞名稱。

lang String

必填。

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

ordered 布林

(預設:false)

如果設為 True,系統會依設定陣列的順序 (遞增) 套用增加/減少邏輯的文法。

commandOnlyModes 布林

(預設:false)

指出裝置是否支援單向 (true) 或雙向 (false) 通訊。如果裝置無法回應這個特徵的 QUERY 意圖或報告狀態,請將這個屬性設為 true。

queryOnlyModes 布林

(預設:false)

如果裝置支援執行查詢,則為必要屬性。這個屬性會表示裝置只能查詢狀態資訊,且無法控制。

範例

有多種模式和設定的裝置。

{
  "availableModes": [
    {
      "name": "load_mode",
      "name_values": [
        {
          "name_synonym": [
            "load",
            "size",
            "load size"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "small_load",
          "setting_values": [
            {
              "setting_synonym": [
                "small",
                "half"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "medium_load",
          "setting_values": [
            {
              "setting_synonym": [
                "medium",
                "normal"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "large_load",
          "setting_values": [
            {
              "setting_synonym": [
                "large",
                "full"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": true
    },
    {
      "name": "temp_mode",
      "name_values": [
        {
          "name_synonym": [
            "temperature",
            "temp"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "hot_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "hot",
                "white"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "warm_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "warm",
                "color"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "cold_temp",
          "setting_values": [
            {
              "setting_synonym": [
                "cold",
                "delicate"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ]
}

僅限指令模式的裝置。

{
  "availableModes": [
    {
      "name": "light_mode",
      "name_values": [
        {
          "name_synonym": [
            "light",
            "lighting"
          ],
          "lang": "en"
        }
      ],
      "settings": [
        {
          "setting_name": "day_light",
          "setting_values": [
            {
              "setting_synonym": [
                "day",
                "bright"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "night_light",
          "setting_values": [
            {
              "setting_synonym": [
                "night",
                "dark"
              ],
              "lang": "en"
            }
          ]
        },
        {
          "setting_name": "reading_light",
          "setting_values": [
            {
              "setting_synonym": [
                "reading",
                "ambiant"
              ],
              "lang": "en"
            }
          ]
        }
      ],
      "ordered": false
    }
  ],
  "commandOnlyModes": true,
  "queryOnlyModes": false
}

裝置狀態

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

類型 說明
currentModeSettings 物件

必填。

鍵/值組合以裝置模式 name 做為鍵,而目前的 setting_name 做為值。

<string> String

目前 setting_name

範例

裝置目前處於哪種模式?

{
  "currentModeSettings": {
    "load_mode": "small_load",
    "temp_mode": "cold_temp"
  }
}

裝置指令

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

action.devices.commands.SetModes

更新模式設定。

參數

參數 類型 說明
updateModeSettings 物件

必填。

鍵/值組合以裝置模式 name 做為鍵,新的 setting_name 做為值。

<string> String

新增 setting_name

範例

設為大負載。

{
  "command": "action.devices.commands.SetModes",
  "params": {
    "updateModeSettings": {
      "load_mode": "large_load"
    }
  }
}

文字範例

de-DE

  • Stelle den Staubsauger auf Ruhemodus

en-US

  • 吸塵器 設為 節能模式 模式

es-ES

  • pla lavadora en modo frío

fr-FR

  • 符合 l'aspirateur en silencieux

裝置錯誤

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