智慧型住宅 EnergyStorage 特徵結構定義

action.devices.traits.EnergyStorage:這個特徵屬於可將電力儲存在電池中並可能充電的裝置,或可為其他裝置充電的裝置。

裝置屬性

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

屬性 類型 說明
queryOnlyEnergyStorage 布林值

必要。

如果這部裝置僅支援與已儲存能源量相關的查詢,以及主動充電狀態 (取決於 isRechargeable 屬性),則為「是」,但不支援開始和停止充電。

energyStorageDistanceUnitForUX String

(預設值:"KILOMETERS")

會用於回覆使用者。

支援的值:

KILOMETERS
MILES
isRechargeable 布林值

(預設值:false)

如果裝置可充電,請將其設為 true。這表示裝置可能會回報 capacityUntilFullisCharging 和選用的 isPluggedIn 狀態,並可接受 Charge 指令。

範例

充電式裝置

{
  "isRechargeable": true,
  "queryOnlyEnergyStorage": false
}

可充電裝置,顯示目前電量 (以英里為單位)

{
  "isRechargeable": true,
  "energyStorageDistanceUnitForUX": "MILES",
  "queryOnlyEnergyStorage": false
}

僅支援回報目前電量等級的非充電裝置

{
  "isRechargeable": false,
  "queryOnlyEnergyStorage": true
}

裝置狀態

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

類型 說明
descriptiveCapacityRemaining String

必填。

能源容量等級的定性說明。請注意,這項設定適用於沒有數值容量資料的情況。如果有數值容量資料,請盡可能優先使用數值容量資料,而非描述性資料。

支援的值:

CRITICALLY_LOW
LOW
MEDIUM
HIGH
FULL
capacityRemaining 陣列

單位/值組合的陣列,可儲存裝置目前所含能量容量的相關資訊。例如:「<裝置> 目前電量有多少英里」或「<裝置> 電量百分比」

[item, ...] 物件

剩餘容量的單位和值組合。

rawValue 整數

必填。

容量值。

unit String

必填。

容量單位。

支援的值:

SECONDS
MILES
KILOMETERS
PERCENTAGE
KILOWATT_HOURS
capacityUntilFull 陣列

單位/值組陣列,用於儲存裝置充電至滿電之前的容量資訊。例如:<device> 充飽電需要多久時間

[item, ...] 物件

充電前容量。

rawValue 整數

必填。

容量值。

unit String

必填。

容量單位。

支援的值:

SECONDS
MILES
KILOMETERS
PERCENTAGE
KILOWATT_HOURS
isCharging 布林值

裝置是否正在充電。

isPluggedIn 布林值

裝置目前是否已接上電源。裝置可以插上電源,但不會主動充電。

範例

充電式裝置

{
  "descriptiveCapacityRemaining": "HIGH",
  "capacityRemaining": [
    {
      "rawValue": 36000,
      "unit": "SECONDS"
    },
    {
      "rawValue": 90,
      "unit": "PERCENTAGE"
    }
  ],
  "capacityUntilFull": [
    {
      "rawValue": 120,
      "unit": "SECONDS"
    }
  ],
  "isCharging": true,
  "isPluggedIn": true
}

可充電裝置,顯示目前電量 (以英里為單位)

{
  "descriptiveCapacityRemaining": "CRITICALLY_LOW",
  "capacityRemaining": [
    {
      "rawValue": 12,
      "unit": "MILES"
    }
  ],
  "capacityUntilFull": [
    {
      "rawValue": 6000,
      "unit": "SECONDS"
    }
  ],
  "isCharging": true,
  "isPluggedIn": true
}

僅支援回報目前電量等級的非充電裝置

{
  "descriptiveCapacityRemaining": "LOW"
}

裝置指令

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

action.devices.commands.Charge

開始或停止充電。

這個指令需要下列屬性:
{
  "isRechargeable": true
}

參數

參數 類型 說明
charge 布林值

必填。

設為 True 可開始充電,設為 False 可停止充電。

範例

開始充電指令

{
  "command": "action.devices.commands.Charge",
  "params": {
    "charge": true
  }
}

停止充電指令

{
  "command": "action.devices.commands.Charge",
  "params": {
    "charge": false
  }
}

裝置 ERRORS

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

deviceUnplugged:使用者嘗試為未插入的裝置充電。