智慧型住宅 ArmDisarm 特徵結構定義
action.devices.traits.ArmDisarm
:這個特徵支援裝置的啟動和解除啟動功能,例如在保全系統中使用。
如果裝置具有多個安全性層級,則應使用 availableArmLevels
屬性回報這些層級。
裝置屬性
具備此特徵的裝置可能會在 SYNC
作業中回報下列屬性。如要進一步瞭解如何處理 SYNC
意圖,請參閱「意圖執行要求」。
屬性 | 類型 | 說明 |
---|---|---|
availableArmLevels |
物件 |
說明裝置支援的安全等級。如果未回報這項屬性,表示裝置只支援一個層級。 |
levels |
陣列 |
必填。 裝置支援的可用安全性層級清單。 |
[item, ...] |
物件 |
安全等級。 |
level_name |
String |
必填。 在指令和狀態中使用的安全層級內部名稱。這個名稱可能不利於使用者,且會在所有語言中共用。 |
level_values |
陣列 |
必填。 包含 |
[item, ...] |
物件 |
指定語言的等級同義詞。 |
level_synonym |
陣列 |
必填。 各個支援語言的易懂等級名稱。系統會將第一個項目視為標準名稱。 |
[item, ...] |
String |
同義字名稱。 |
lang |
String |
必填。 等級同義詞的語言代碼。請參閱「支援的語言」。 |
ordered |
布林值 |
必填。 如果設為 true,系統會依照 levels 陣列的順序,套用增加/減少邏輯的額外語法。舉例來說,如果說出「Ok Google,將安全等級提高 1 級」,Google 助理就會判斷目前的安全等級,然後將該安全等級提高 1 級。如果將這個值設為 false,系統就不會支援增加/減少邏輯的額外文法。 |
範例
具備兩種不同啟動層級的安全系統
{ "availableArmLevels": { "levels": [ { "level_name": "L1", "level_values": [ { "level_synonym": [ "Home and Guarding", "SL1" ], "lang": "en" }, { "level_synonym": [ "Zuhause und Bewachen", "SL1" ], "lang": "de" } ] }, { "level_name": "L2", "level_values": [ { "level_synonym": [ "Away and Guarding", "SL2" ], "lang": "en" }, { "level_synonym": [ "Weg und Bewachen", "SL2" ], "lang": "de" } ] } ], "ordered": true } }
裝置狀態
具有此特徵的實體可能會在 QUERY
作業中回報下列狀態。如要進一步瞭解如何處理 QUERY
意圖,請參閱「意圖執行要求」。
州 | 類型 | 說明 |
---|---|---|
isArmed |
布林值 |
必填。 指出裝置目前是否已啟動。 |
currentArmLevel |
String |
必填。 如果指定 |
exitAllowance |
整數 |
表示使用者必須離開的時間 (以秒為單位), |
範例
回報不同啟動層級的安全系統
{ "isArmed": true, "currentArmLevel": "L1" }
裝置指令
具備此特徵的裝置可能會在 EXECUTE
作業中回應下列指令。如要進一步瞭解如何處理 EXECUTE
意圖,請參閱「意圖執行要求」。
action.devices.commands.ArmDisarm
設定此裝置的警報等級。
參數
酬載包含下列其中一種內容:
取消啟動或解除作業
參數 | 類型 | 說明 |
---|---|---|
followUpToken |
String |
Google 提供的後續回應權杖。 |
arm |
布林值 |
必填。 如果指令是啟動,則為 True。設為 False 可解除警報。 |
cancel |
布林值 |
必填。 如果指令是取消 |
啟用或停用裝置,並選擇安全等級。
參數 | 類型 | 說明 |
---|---|---|
followUpToken |
String |
Google 提供的後續回應權杖。 |
arm |
布林值 |
必填。 如果指令是啟動,則為 True。設為 False 可解除警報。 |
armLevel |
String |
要啟動的 |
範例
啟動系統
{ "command": "action.devices.commands.ArmDisarm", "params": { "arm": true, "followUpToken": "123" } }
將系統設為 L1 手臂級別
{ "command": "action.devices.commands.ArmDisarm", "params": { "arm": true, "armLevel": "L1", "followUpToken": "456" } }
取消啟動作業
{ "command": "action.devices.commands.ArmDisarm", "params": { "arm": true, "cancel": true } }
相關錯誤
裝置啟動或解除警報時發生錯誤。
支援的值:
alreadyInState
deviceTampered
passphraseIncorrect
pinIncorrect
securityRestriction
tooManyFailedAttempts
userCancelled