欢迎使用 Google Home 开发者中心,这是一个学习如何开发智能家居 Action 的新平台。注意:构建 Action 的工作仍需在 Actions 控制台中完成。

智能家居 EnergyStorage 特征架构

action.devices.traits.EnergyStorage - 此特征属于可将电量存储在电池中且可能充电的设备,或可以为其他设备充电的设备。

设备属性

具有此特征的设备可以在 SYNC 操作中报告以下属性。如需详细了解如何处理 SYNC intent,请参阅 intent 执行方式

属性 类型 说明
queryOnlyEnergyStorage Boolean

必填。

如果此设备仅支持查询存储的电量水平以及主动充电状态(具体取决于 isRechargeable 属性),但不支持查询启动和停止充电,则为 true。

energyStorageDistanceUnitForUX String

(默认:"KILOMETERS"

将用于响应用户。

支持的值:

KILOMETERS
MILES
isRechargeable Boolean

(默认:false

如果此设备可充电,请设为 true。这表示设备可以报告 capacityUntilFullisCharging 和可选的 isPluggedIn 状态,并且可以接受 Charge 命令。

示例

可充电设备

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

显示当前充电水平(以英里为单位)的可充电设备

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

仅支持报告当前充电水平的不可充电设备

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

设备状态

具有此特征的实体可以在 QUERY 操作中报告以下状态。如需详细了解如何处理 QUERY intent,请参阅 intent 执行方式

类型 说明
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 Boolean

设备是否正在充电。

isPluggedIn Boolean

设备目前是否已接通电源。设备可以接通电源,但无法主动充电。

示例

可充电设备

{
  "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 intent,请参阅 intent 执行方式

action.devices.commands.Charge

开始或停止充电。

此命令需要以下属性:
{
  "isRechargeable": true
}

参数

参数 类型 说明
charge Boolean

必填。

true 表示开始充电,false 表示停止充电。

示例

开始充电命令

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

停止充电命令

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

设备错误

查看错误和异常的完整列表。

deviceUnplugged:用户尝试为未插电的设备充电。