通过平台提供的客户端的场景自动化API,App开发者可以实现场景自动化功能,让用户可以自行配置一个自动化任务,当触发某些条件时,执行某些任务。例如,用户可以通过App设置:到达早上6时空调自动关闭的任务。

名词解释

  • 场景:需要用户手动在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自行开发页面
  • 调用场景插件

基于场景服务2.0API自行开发页面

支持功能如下。

  • 场景的创建、删除、查看、修改
  • 自动化的创建、删除、查看、修改
  • 触发条件支持:时间点、时间段、设备动作(后续会扩展更多)
  • 触发条件的关系:满足所有条件、满足以下任意条件
  • 执行任务支持:设备动作、执行场景、发送手机推送通知

开发后效果实例如下图,该实例基于CA模型开发(不包括界面,界面需要开发者基于API自行开发),具体参见场景服务2.0


场景化

调用场景插件

支持功能如下:

  • 场景的创建、删除、查看、修改
  • 自动化的创建、删除、查看、修改
  • 触发条件支持:时间点、设备动作
  • 触发条件的关系:TCA模型,需要用户分别设置Trigger、Condition和Action
  • 执行任务支持:设备动作、执行场景、发送手机推送通知

在平台自有品牌App-App界面中找到该插件以及调用方法。该插件包含了自动化场景功能的完整界面,可简化App的开发工作量。具体请查看插件使用指南

该插件基于TCA模型,所以如果开发者希望实现更灵活和体验更佳的功能和界面,建议使用基于场景服务2.0API自行开发界面。


插件