Smart Home 計時器特徵結構定義
action.devices.traits.Timer
:計時器特徵代表裝置上的計時器。
舉例來說,智慧型灑水器控制器或智慧型燈具開關可能內建計時器。這個特徵可用來控制裝置的內建計時器,例如啟動新計時器、暫停和取消執行中的計時器,以及詢問還剩下多少時間。
裝置屬性
具備這個特性的裝置可能會在 SYNC
作業中回報下列屬性。如要進一步瞭解如何處理 SYNC
意圖,請參閱「意圖執行要求」。
屬性 | 類型 | 說明 |
---|---|---|
maxTimerLimitSec |
整數 |
必要。 表示裝置可用的最長計時器設定,以秒為單位。 |
commandOnlyTimer |
布林 |
(預設值: 指出裝置是否支援單向 (true) 或雙向 (false) 通訊。如果裝置無法回應此特性的 QUERY 意圖或報告狀態,請將此屬性設為 true。 |
範例
設有 2 小時計時器上限的裝置。
{ "maxTimerLimitSec": 7200 }
裝置狀態
具有這個特性的實體可能會在 QUERY
作業中回報下列狀態。如要進一步瞭解如何處理 QUERY
意圖,請參閱「意圖執行要求」。
狀態 | 類型 | 說明 |
---|---|---|
timerRemainingSec |
整數 |
必要。 目前剩餘時間 (以秒為單位)、-1 或 [0, |
timerPaused |
布林 |
如果已啟用的計時器且目前暫停,則為 True。 |
範例
裝置計時器還剩多少時間?(未執行)。
{ "timerRemainingSec": -1 }
裝置計時器還剩多少時間?(執行中)。
{ "timerRemainingSec": 60 }
裝置計時器還剩多少時間?(已暫停)。
{ "timerRemainingSec": 30, "timerPaused": true }
裝置指令
具有這個特性的裝置可能會在 EXECUTE
作業中回應下列指令。如要進一步瞭解如何處理 EXECUTE
意圖,請參閱「意圖執行要求」。
action.devices.commands.TimerStart
啟動新計時器。
參數
參數 | 類型 | 說明 |
---|---|---|
timerTimeSec |
整數 |
必要。 計時器的時間長度 (秒),必須在 [1, |
範例
執行裝置計時器 5 分鐘。
{ "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 300 } }
相關錯誤
啟動計時器時發生錯誤。
支援的值:
noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration
action.devices.commands.TimerAdjust
調整計時器時間長度。
參數
參數 | 類型 | 說明 |
---|---|---|
timerTimeSec |
整數 |
必要。 計時器的正數或負數調整 (以秒為單位),且必須在 [ |
範例
將裝置計時器延長 1 分鐘。
{ "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