智能家居 ArmDisarm 特征架构
action.devices.traits.ArmDisarm
- 此特征支持设防和撤防,例如在安防系统中。
对于具有多个安全级别的设备,应使用 availableArmLevels
属性报告这些级别。
设备属性
具有此特征的设备可能会在 SYNC
操作中报告以下属性。如需详细了解如何处理 SYNC
intent,请参阅意图实现。
属性 | 类型 | 说明 |
---|---|---|
availableArmLevels |
对象 |
描述设备支持的安全级别。如果未报告此属性,则表示设备仅支持一个级别。 |
levels |
数组 |
必填。 设备支持的可用安全级别列表。 |
[item, ...] |
对象 |
安全等级。 |
level_name |
String |
必填。 命令和状态中使用的安全级别的内部名称。此名称可能不太方便用户理解,并且在所有语言中都是相同的。 |
level_values |
数组 |
必填。 包含 |
[item, ...] |
对象 |
给定语言的级别同义词。为了提供语言回退,至少需要一个 |
level_synonym |
数组 |
必填。 各会员级别的易记名称(采用每种受支持的语言)。第一个项被视为规范名称。 |
[item, ...] |
String |
同义词名称。为了提供语言回退,至少需要一个 |
lang |
String |
必填。 相应级别的同义词的语言代码。请参阅支持的语言。 |
ordered |
布尔值 |
必填。 如果设置为 true,则会按级别数组的顺序应用用于增加/减少逻辑的其他语法。例如,如果您说“Hey 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
intent,请参阅意图实现。
州 | 类型 | 说明 |
---|---|---|
isArmed |
布尔值 |
必填。 指示设备当前是否处于布防状态。 |
currentArmLevel |
String |
必填。 如果指定了 |
exitAllowance |
整数 |
表示用户必须在 |
示例
报告不同设防级别的安防系统
{ "isArmed": true, "currentArmLevel": "L1" }
设备命令
具有此特征的设备可能会响应以下命令,作为 EXECUTE
操作的一部分。如需详细了解如何处理 EXECUTE
intent,请参阅意图实现。
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