自动化操作是一种让住宅中的任务和设备设置自动执行的功能。 自动化操作已在 Google Home 生态系统中推出,可在 Google Home app (GHA) 中作为日常安排使用,也可通过 Google Home for web 上的 automation script editor 使用。
现在,您可以通过 Home API 在 Google Home 生态系统中使用自动化操作。它们使用 GHA 日常安排和 script editor 中使用的相同基本概念,但具有仅通过 Home API 才能实现的增强功能,包括:
- 访问设备的所有 Matter 标准 trait 和 smart home trait,如 Home API 中所述。
- 支持顺序、并行和选择性执行流。
自动化操作使用 Automation DSL 编写,这是一种专门用于在 Kotlin 中构建自动化操作的领域特定语言。
您打算在应用中通过 Device & Structure API 或 Automation API 使用任何 trait 和类型,都必须在初始化时进行注册。请参阅初始化主屏幕。
开发者历程
Automation API 只是更大开发历程的一部分。它是在集成 Structure API 和 Device API 之后提供的,以确保用户在需要使用自动化操作时能够顺利使用。
- 开发者规划自动化操作,并使用自动化 DSL 进行定义。
- 开发者将自动化定义嵌入到 Kotlin Android 应用中。
- 应用会根据使用 Discovery API 或 Device API 收集的设备相关信息(包括 trait、属性、命令和事件)向用户显示自动化操作。
- 借助 Discovery API,应用可以根据用户结构中存在的设备类型和特征生成自动化操作草稿,无论用户是否提供输入,都可以执行此操作。
- Device API 可以提供与 Discovery API 相同的大部分信息,但未针对自动化用例进行优化。如需了解详情,请参阅比较 Device API 和 Discovery API。
- 应用会创建按所选结构键控的实际自动化操作。
- 该自动化操作现已在用户的结构中提供,并且可以使用 Structure API 方法执行或删除。
用户可以随时创建自动化操作的新实例,选择不同的结构,或者根据应用逻辑,选择另一组设备。每次用户执行此操作时,应用都会生成自动化操作的新实例。
在最基本的场景中,您可以向用户推荐执行相对基本任务的预定义自动化操作。或者,您也可以显示自动化操作的框架,供用户根据自己的需求进行自定义。或者,您也可以编写一个开放式自动化操作编辑器,让用户能够使用 Automation API 中提供的所有构建块构建复杂的自动化操作。
资源限制
以下限制适用于 Home API 中的自动化操作:
指标 | 限制 |
---|---|
每个结构的自动化操作数量上限 | 64 |
每个自动化操作的节点数上限 | 128 |
每个自动化操作的表达式节点数上限 | 64 |
每个结构的自动化操作实例数上限 | 1024 |
每个开发者对每个结构的自动化实例数量上限 | 64 |
每个结构每天的执行次数上限 | 1024 |
每个开发者每天针对每个结构的执行次数上限 | 128 |