智慧型住宅設防/解除設防特徵結構定義
action.devices.traits.ArmDisarm
- 這項特徵支援設防和解除設防,例如用於保全系統。
如果裝置有多個安全等級,應使用 availableArmLevels
屬性回報這些等級。
裝置屬性
具有這項特徵的裝置可能會回報下列屬性,做為 SYNC
作業的一部分。如要進一步瞭解如何處理 SYNC
意圖,請參閱「意圖執行要求」。
屬性 | 類型 | 說明 |
---|---|---|
availableArmLevels |
物件 |
說明裝置支援的安全等級。如果未回報這項屬性,表示裝置僅支援一個層級。 |
levels |
陣列 |
必要。 裝置支援的安全層級清單。 |
[item, ...] |
物件 |
安全等級。 |
level_name |
String |
必要。 指令和狀態中使用的安全等級內部名稱。這個名稱可能不方便使用者辨識,而且會套用至所有語言。 |
level_values |
陣列 |
必要。 包含 |
[item, ...] |
物件 |
指定語言的等級同義詞。如要提供語言備用選項,至少須有一個項目的 |
level_synonym |
陣列 |
必要。 各支援語言的等級易記名稱。第一個項目會視為標準名稱。 |
[item, ...] |
String |
同義詞名稱。如要提供語言備用選項,至少須有一個項目的 |
lang |
String |
必要。 等級同義詞的語言代碼。請參閱「支援的語言」。 |
ordered |
布林值 |
必要。 如設為 true,系統會依層級陣列的順序,套用增加/減少邏輯的其他文法。舉例來說,如果說出「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。無法解除武裝。 |
cancel |
布林值 |
必要。 如果指令是要取消 |
啟動或解除裝置,並視需要設定安全等級。
參數 | 類型 | 說明 |
---|---|---|
followUpToken |
String |
Google 提供的後續回應權杖。 |
arm |
布林值 |
必要。 如果指令是設防,則為 True。無法解除武裝。 |
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