智能家居定时器 trait 架构
action.devices.traits.Timer
- Timer trait 表示设备上的计时器。
例如,智能洒水器控制器或智能灯开关可能具有内置计时器。此 trait 可用于控制设备上的内置计时器,例如启动新计时器以及暂停和取消正在运行的计时器,以及询问剩余时间。
设备属性
具有此特征的设备可能会在 SYNC
操作中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅intent 执行方式。
属性 | 类型 | 说明 |
---|---|---|
maxTimerLimitSec |
整数 |
必填。 表示设备上可用的最长定时器设置,以秒为单位。 |
commandOnlyTimer |
布尔值 |
(默认值: 指示设备是否支持使用单向(true)或双向(false)通信。如果设备无法响应此特征的 QUERY intent 或报告状态,请将此属性设置为 true。 |
示例
设备的定时器限制为 2 小时。
{ "maxTimerLimitSec": 7200 }
设备状态
具有此 trait 的实体可能会在 QUERY
操作期间报告以下状态。如需详细了解如何处理 QUERY
intent,请参阅intent 执行方式。
州 | 类型 | 说明 |
---|---|---|
timerRemainingSec |
整数 |
必填。 当前剩余时间(以秒为单位),-1 或 [0, |
timerPaused |
布尔值 |
如果存在有效的计时器,但目前处于暂停状态,则为 true。 |
示例
设备计时器还剩多长时间?(not running)。
{ "timerRemainingSec": -1 }
设备定时器还剩多长时间?(running)。
{ "timerRemainingSec": 60 }
设备定时器还剩多长时间?(已暂停)。
{ "timerRemainingSec": 30, "timerPaused": true }
设备命令
具有此 trait 的设备可能会在 EXECUTE
操作期间响应以下命令。如需详细了解如何处理 EXECUTE
intent,请参阅 intent 执行方式。
action.devices.commands.TimerStart
启动一个新计时器。
参数
参数 | 类型 | 说明 |
---|---|---|
timerTimeSec |
整数 |
必填。 定时器时长(以秒为单位);必须介于 [1, |
示例
让设备计时器运行 5 分钟。
{ "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 300 } }
相关错误
启动定时器时出错。
支持的值:
noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration
action.devices.commands.TimerAdjust
调整计时器持续时间。
参数
参数 | 类型 | 说明 |
---|---|---|
timerTimeSec |
整数 |
必填。 计时器的正负调整值(以秒为单位);必须介于 [ |
示例
为设备定时器增加一分钟。
{ "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": 60 } }
从设备计时器减去 30 秒。
{ "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": -30 } }
相关错误
调整定时器时出错。
支持的值:
noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration
action.devices.commands.TimerPause
暂停计时器。
参数
参数 | 类型 | 说明 |
---|---|---|
没有属性 |
示例
暂停设备定时器。
{ "command": "action.devices.commands.TimerPause", "params": {} }
相关错误
暂停计时器时出错。
支持的值:
noTimerExists
action.devices.commands.TimerResume
恢复定时器。
参数
参数 | 类型 | 说明 |
---|---|---|
没有属性 |
示例
恢复设备定时器。
{ "command": "action.devices.commands.TimerResume", "params": {} }
相关错误
恢复计时器时出错。
支持的值:
noTimerExists
action.devices.commands.TimerCancel
取消定时器。
参数
参数 | 类型 | 说明 |
---|---|---|
没有属性 |
示例
停止设备定时器。
{ "command": "action.devices.commands.TimerCancel", "params": {} }
相关错误
停止计时器时出错。
支持的值:
noTimerExists