智慧型住宅填入特徵結構定義
action.devices.traits.Fill - 這項特徵適用於支援注水的裝置,例如浴缸。
裝置屬性
具有這項特徵的裝置可能會回報下列屬性,做為 SYNC 作業的一部分。如要進一步瞭解如何處理 SYNC 意圖,請參閱「意圖執行要求」。
| 屬性 | 類型 | 說明 | 
|---|---|---|
| availableFillLevels | 物件 | 說明裝置的填充程度。 | 
| levels | 陣列 | 必要。 等級名稱和特定語言的同義字清單。 | 
| [item, ...] | 物件 | 等級名稱和特定語言的同義詞。 | 
| level_name | String | 必要。 等級的內部名稱。這可能不適合使用者,而且會以所有語言分享。 | 
| level_values | 陣列 | 必要。 各支援語言的等級同義詞。 | 
| [item, ...] | 物件 | 指定語言的同義詞。如要提供語言備用選項,至少須有一個項目的  | 
| level_synonym | 陣列 | 必要。 等級的同義詞。清單中的第一個字串會做為該語言的標準層級名稱。 | 
| [item, ...] | String | 同義詞名稱。如要提供語言備用選項,至少須有一個項目的  | 
| lang | String | 必要。 語言代碼 (ISO 639-1)。請參閱支援的語言。 | 
| ordered | 布林值 | 必要。 如果為 true,裝置會處理增加或減少邏輯的其他文法,如  | 
| supportsFillPercent | 布林值 | (預設值: 如為 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
  }
}裝置狀態
具有這項特徵的實體可能會回報下列狀態,做為 QUERY 作業的一部分。如要進一步瞭解如何處理 QUERY 意圖,請參閱「意圖執行要求」。
| 州 | 類型 | 說明 | 
|---|---|---|
| isFilled | 布林值 | 必要。 如果裝置已填充任何程度的電量,則為 True。如果裝置完全沒電,則為 False。 | 
| currentFillLevel | String | 如果設定  | 
| currentFillPercent | Number | 如果設定  | 
範例
浴缸的水加滿了嗎?
{
  "isFilled": true
}浴缸的水加滿了嗎?(含等級)。
{
  "isFilled": true,
  "currentFillLevel": "half_level"
}裝置指令
具有這項特徵的裝置可能會在 EXECUTE 作業中回應下列指令。如要進一步瞭解如何處理 EXECUTE 意圖,請參閱「意圖執行要求」。
action.devices.commands.Fill
加水或排水。
參數
| 參數 | 類型 | 說明 | 
|---|---|---|
| fill | 布林值 | 必要。 填寫為 true,排空為 false。 | 
| fillLevel | String | 指出要從  | 
| 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"
  }
}