智能家居传感器状态特征架构
action.devices.traits.SensorState
- 此特征涵盖定量衡量和定性状态。
设备属性
具有此特征的设备可能会在 SYNC
操作中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅 intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
sensorStatesSupported |
数组 |
必填。 每个对象代表此特定设备支持的传感器状态功能。每个传感器必须至少有描述性或数字能力。传感器还可以同时报告这两者,在这种情况下,系统会优先选择数值。 |
[item, ...] |
对象 |
支持的传感器功能。 至少需要 1 项内容。 |
name |
String |
必填。 支持的传感器类型。请参阅“支持的传感器”表。 |
descriptiveCapabilities |
对象 |
传感器功能的说明。 |
availableStates |
数组 |
必填。 设备的可用状态列表。当传感器未返回值时,隐含支持“未知”状态。 |
[item, ...] |
String |
支持的描述性状态值。 至少需要 1 项内容。 |
numericCapabilities |
对象 |
描述传感器可能报告的数值。 |
rawValueUnit |
String |
必填。 支持的数字单位。 |
如需详细了解此特征支持的不同功能和传感器类型,请参阅支持的传感器。
示例
报告描述性状态值的传感器设备。
{ "sensorStatesSupported": [ { "name": "AirQuality", "descriptiveCapabilities": { "availableStates": [ "healthy", "moderate", "unhealthy", "very unhealthy" ] } } ] }
报告数字状态值的传感器设备。
{ "sensorStatesSupported": [ { "name": "CarbonMonoxideLevel", "numericCapabilities": { "rawValueUnit": "PARTS_PER_MILLION" } } ] }
报告描述性和数值状态值的传感器设备。
{ "sensorStatesSupported": [ { "name": "SmokeLevel", "numericCapabilities": { "rawValueUnit": "PARTS_PER_MILLION" }, "descriptiveCapabilities": { "availableStates": [ "smoke detected", "high", "no smoke detected" ] } } ] }
支持的传感器
下表列出了支持的传感器类型及其相关功能。
空气质量
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
支持的值:
|
一氧化碳
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
支持的值:
|
烟雾水平
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
支持的值:
|
过滤清洁程度
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
不受支持。 |
漏水
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
不受支持。 |
雨水检测
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
不受支持。 |
过滤器生命周期
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
支持的值:
|
支持的值:
|
计算出的过滤器生命周期
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
不受支持。 | 支持的值:
|
二氧化碳水平
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
不受支持。 | 支持的值:
|
颗粒物
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
不受支持。 | 支持的值:
|
挥发性有机化合物
名称 | 描述性功能 | 数值能力 |
---|---|---|
支持的值:
|
不受支持。 | 支持的值:
|
设备状态
具有此特征的实体可能会在 QUERY
操作中报告以下状态。如需详细了解如何处理 QUERY
intent,请参阅 intent 执行方式。
州 | 类型 | 说明 |
---|---|---|
currentSensorStateData |
数组 |
必填。 当前传感器状态的列表。 |
[item, ...] |
对象 |
当前传感器状态。 |
name |
String |
必填。 传感器状态名称。与 |
currentSensorState |
String |
当前描述性状态值。与 |
rawValue |
编号 |
当前数值传感器值。 |
如需详细了解此特征支持的不同功能和传感器类型,请参阅支持的传感器。
示例
报告描述性状态值的传感器设备。
{ "currentSensorStateData": [ { "name": "AirQuality", "currentSensorState": "healthy" } ] }
报告数字状态值的传感器设备。
{ "currentSensorStateData": [ { "name": "CarbonMonoxideLevel", "rawValue": 200 } ] }
报告描述性和数值状态值的传感器设备。
{ "currentSensorStateData": [ { "name": "SmokeLevel", "currentSensorState": "smoke detected", "rawValue": 200 } ] }
设备命令
无。
设备通知
在设备状态发生变化时,具有此特征的设备可能会返回以下通知载荷。如需详细了解如何实现通知,请参阅智能家居 Action 的通知。
字段 | 类型 | 说明 |
---|---|---|
SensorState |
对象 |
必填。 通知负载。 |
priority |
整数 |
必填。 表示通知级别。目前支持的值为 0,表示应大声读出通知。 |
name |
String |
必填。 传感器状态名称。请参阅适用于支持的传感器类型的列表。 |
currentSensorState |
String |
必填。 当前描述性状态值。请参阅适用于支持的传感器类型的列表。 |
通知载荷可包含以下传感器类型:
AirQuality
CarbonMonoxideLevel
SmokeLevel
FilterCleanliness
WaterLeak
RainDetection
FilterLifeTime
如需详细了解每种传感器支持的不同功能,请参阅支持的传感器。
示例
{ "SensorState": { "priority": 0, "name": "SmokeLevel", "currentSensorState": "high" } }