Automation API 支持大多数 trait,但对 trait 中某些属性、事件和命令的支持可能有限。
如需验证 Automation API 是否支持您的用例,请在下表中进行搜索。
一般来说:
- 您打算在应用中使用 Automation API 的任何 trait 和类型都必须在初始化时注册。请参阅创建 Home 实例。
- 任何属性都可以在启动器或条件中使用。
- 不报告状态的 Cloud-to-cloud 设备无法在手动或通过发现功能创建的自动化操作中用作触发器。
- 即使设备支持此处列出的特征,也可能会因报告状态质量阈值而被禁止在 Automation API 中用作启动器或操作:
- 报告状态成功率低于 90% 的设备将被禁止用作启动器。
- 命令执行成功率低于 95% 的设备将被禁止用作操作。
- 命令只能用作操作。
- 某些 trait(例如
AssistantBroadcast
)仅适用于 Automation API。 okGoogle
命令是一种结构级命令,可用于自动执行结构中的任何设备。不过,Home API 应用可能无法访问每部设备。如需了解在各种情况下如何强制执行权限,请参阅 OkGoogle 权限。- 部分 trait 有前提条件:
- 如需使用
Time.ScheduledTimeEvent
,自动化操作运行的结构必须具有在 Google Home app (GHA) 中设置的街道地址。更改 Google 住址介绍了用户如何输入建筑物地址。如果未在 GHA 中设置地址,系统将无法创建自动化操作,并抛出一条错误消息:“structure 不支持 ScheduledTimeEvent”。 - 如需使用
AreaPresenceState
或AreaAttendanceState
trait,用户必须在 GHA 中设置在家/外出感知功能。 - 如需使用
ObjectDetection
trait,用户必须拥有有效的 Nest Aware 订阅。
- 如需使用
您还可以在自动化操作中使用某些 trait 的简化版本。 如需了解详情,请参阅简化后的 trait。
屏蔽表示一个或多个设备类型的自动化操作不支持该命令。如需了解详情,请参阅自动化操作中被屏蔽的操作。