智慧型住宅 RunCycle 特徵

action.devices.traits.RunCycle - 此特徵代表任何可查詢作業處於執行狀態的裝置。

這類裝置會在開始運作時回報週期總數, 以及裝置目前運作期間的各個週期這可讓使用者執行查詢,例如:

  • 烘衣機目前進行到哪個階段?
  • 洗碗機還剩多少個週期?
  • 乾衣機正在做什麼?
  • 何時會完成清洗?

某些裝置使用非循環格式的時間長度。任何裝置 系統可回報該段時間的剩餘時間 週期。這個方法也能處理週期不一致的情況 (例如, 洗碗機不一定每次都會使用所有週期)。例如,使用者可能會問: 我的吸塵器會跑更久?這會傳回時間單位 (以單位計) 按比例計算剩餘時間這也適用於列出的裝置 ;我的衣服烘衣還有多久?可以在數分鐘內傳回處理時間。

裝置可以傳回已掌握的資訊,且 Google 助理 TTS 回應會構成 附上資料的最佳解答 (例如「洗碗機正在運轉中」 大約 20 分鐘內就會完成。)

RunCycle 目前是唯讀特性 - 沒有指令,只有狀態 。未來可能有重新執行週期或略過的機制 循環 (適用於灑水器,但不適合洗衣機)。

裝置屬性

無。

裝置狀態

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

類型 說明
currentRunCycle 陣列

必要。

內含每種支援語言中目前週期的同義詞。

[item, ...] 物件

循環同義詞名稱。

currentCycle String

必要。

正在執行的週期。

nextCycle String

選用設定。要進行的下一個週期。

lang String

必要。

指定週期名稱的語言代碼。請參閱支援的語言

currentTotalRemainingTime 整數

必要。

作業剩餘時間,以秒為單位。

currentCycleRemainingTime 整數

必要。

目前週期剩餘時間,以秒為單位。

範例

裝置會繼續清洗 5 分鐘,作業會在 20 分鐘內完成。

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 1200,
  "currentCycleRemainingTime": 300
}

裝置會繼續清洗 5 分鐘,然後再轉動。

{
  "currentRunCycle": [
    {
      "currentCycle": "rinse",
      "nextCycle": "spin",
      "lang": "en"
    }
  ],
  "currentTotalRemainingTime": 600,
  "currentCycleRemainingTime": 300
}

裝置指令

無。

裝置通知

具備這種特徵的裝置可能會傳回下列項目 通知酬載,做為裝置狀態變更的一部分。學習 如要進一步瞭解如何實作通知,請參閱 智慧型住宅動作的通知

欄位 類型 說明
RunCycle

必要。

通知酬載。

支援下列其中一項:
0 物件

成功

priority 整數

必要。

代表通知層級。目前支援的值為 0,表示系統應朗讀通知。

status String

必要。

作業結果。

支援的值:

SUCCESS
currentCycleRemainingTime 整數

必要。

目前週期剩餘時間,以秒為單位。

1 物件

失敗

priority 整數

必要。

代表通知層級。目前支援的值為 0,表示系統應朗讀通知。

status String

必要。

作業結果。

支援的值:

FAILURE
errorCode String

必要。

值可以是這個特徵的任何錯誤代碼,例如 deviceStuck

範例

裝置執行完畢。

{
  "RunCycle": {
    "priority": 0,
    "status": "SUCCESS",
    "currentCycleRemainingTime": 0
  }
}

完成目前的週期時發生錯誤。

{
  "RunCycle": {
    "priority": 0,
    "status": "FAILURE",
    "errorCode": "deviceStuck"
  }
}

裝置錯誤

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