智慧型住宅計時器特徵結構

action.devices.traits.Timer - 計時器特徵代表裝置上的計時器。

例如智慧型灑水控制器或智慧型燈具 都有內建計時器這個特徵可用來控制 例如啟動新計時器、暫停和取消執行中的計時器 詢問剩餘的時間

裝置屬性

具備這項特徵的裝置可能會回報下列資料: 在 SYNC 作業中使用屬性變更。學習 如要進一步瞭解如何處理 SYNC 意圖,請參閱 意圖執行要求

屬性 類型 說明
maxTimerLimitSec 整數

必要。

指出裝置上可用的最長計時器設定 (以秒為單位)。

commandOnlyTimer 布林值

(預設值:false)

指出裝置是否支援單向 (true) 或雙向 (false) 通訊。如果裝置無法回應此特徵的「QUERY」意圖或「回報狀態」,請將這項屬性設為 true。

範例

設有 2 小時計時器時間的裝置。

{
  "maxTimerLimitSec": 7200
}

裝置狀態

具有此特徵的實體可能會回報下列資料: 做為 QUERY 作業的一部分。學習 如要進一步瞭解如何處理 QUERY 意圖,請參閱 意圖執行要求

類型 說明
timerRemainingSec 整數

必要。

目前剩餘時間 (以秒為單位) - 1 或 [0, maxTimerLimitSec]。設為 -1 表示目前並未啟動計時器。

timerPaused 布林值

如果設有執行中的計時器但目前為暫停狀態,則為 True。

範例

裝置計時器還剩多少時間?(未執行)。

{
  "timerRemainingSec": -1
}

裝置計時器還剩多少時間?(執行中)。

{
  "timerRemainingSec": 60
}

裝置計時器還剩多少時間?(暫停)。

{
  "timerRemainingSec": 30,
  "timerPaused": true
}

裝置指令

具備這種特徵的裝置可能會回應下列問題 做為 EXECUTE 作業的一部分。學習 如要進一步瞭解如何處理 EXECUTE 意圖,請參閱 意圖執行要求

action.devices.commands.TimerStart

啟動新計時器。

參數

參數 類型 說明
timerTimeSec 整數

必要。

計時器時間長度 (以秒為單位);不得超過 [1, maxTimerLimitSec]。

範例

執行裝置計時器,5 分鐘。

{
  "command": "action.devices.commands.TimerStart",
  "params": {
    "timerTimeSec": 300
  }
}

啟動計時器時發生錯誤。

支援的值:

noTimerExists
timerValueOutOfRange
aboveMaximumTimerDuration
belowMinimumTimerDuration

action.devices.commands.TimerAdjust

調整計時器時間長度。

參數

參數 類型 說明
timerTimeSec 整數

必要。

對計時器的正面或負面調整 (以秒為單位);必須位於 [-maxTimerLimitSec, maxTimerLimitSec]。

範例

將裝置計時器增加 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

裝置錯誤

查看完整清單 錯誤和例外狀況