场景自动化开发指南
更新时间:2019-07-25 00:58:13
概述
通过平台提供的客户端的场景自动化API,App开发者可以实现场景自动化功能,让用户可以自行配置一个自动化任务,当触发某些条件时,执行某些任务。例如,用户可以通过APP设置:当到达早上6:00时、空调自动关闭的任务。
名词解释
场景:需要用户手动在APP上点击触发后,执行一系列任务。如,用户可以创建一个“回家模式”,包括灯打开、空调打开、电视打开、窗帘拉开多个任务。当用户在app上点击执行“回家模式”这个场景时,所有任务被执行。
自动化:不需要用户手动触发,而是当符合某些条件时,自动执行一系列任务。如,用户可以创建一个“自动开启摄像头”的任务,当触发条件“红外人体传感器识别到有人经过”时,自动执行“摄像头开始录像”的任务。
IFTTT:If this then that规则,即自动化。
Trigger:自动化中的触发器
Condition:自动化中的触发条件
Action:场景和自动化中的任务执行
CA模型【推荐】:当满足Condition(多个Condition之间可设规则,all:当所有触发条件都满足,any:任一触发条件满足)的触发条件时,执行Action。
TCA模型【旧】:当Trigger(多个trigger之间是 and 关系)触发,且满足Condition(多个Condition之间是 or 关系)的触发条件时,执行Action。
开发指南
APP端的场景自动化功能,可以通过两种方式实现:
- 基于场景服务2.0API自行开发页面
- 调用场景插件
1. 基于场景服务2.0API自行开发页面
支持功能:
场景的创建、删除、查看、修改
自动化的创建、删除、查看、修改
触发条件支持:时间点、时间段、设备动作(后续会扩展更多)
触发条件的关系:满足所有条件、满足以下任意条件
执行任务支持:设备动作、执行场景、发送手机推送通知
开发后效果实例如下图,该实例基于CA模型【推荐】开发,不包括页面,需要开发者基于API自行开发页面,具体请查看 场景服务2.0
2. 调用场景插件
支持功能:
场景的创建、删除、查看、修改
自动化的创建、删除、查看、修改
触发条件支持:时间点、设备动作
触发条件的关系:TCA模型,需要用户分别设置Trigger、Condition和Action
执行任务支持:设备动作、执行场景、发送手机推送通知
在控制台-自有APP-APP界面找到该插件以及调用方法。该插件包含了自动化场景功能的完整页面,可简化APP的开发工作量。具体请查看插件使用指南
该插件是基于TCA模型(旧),所以如果开发者希望实现更灵活和体验更佳的功能和页面,建议使用方法1。