智慧型住宅設防/解除設防特徵結構定義
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
}
}相關錯誤
裝置設防或解除設防時發生錯誤。
支援的值:
alreadyInStatedeviceTamperedpassphraseIncorrectpinIncorrectsecurityRestrictiontooManyFailedAttemptsuserCancelled