【每周一个省钱知识点】Siri Shortcuts+涂鸦SDK,实现Siri控制智能设备
我们希望我们所说的"智能",不仅仅只停留在单一的智能设备控制,而是在一个更具体的用户场景,更定制化的用户需求,更人性化的使用流程,比如和Siri说一句"我回家了",就会打开一系列灯,窗帘,空调等一系列用户设置好的智能设备。
那么问题来了
如何利用Siri Shortcuts和涂鸦SDK完成用Siri来控制设备,执行一键执行,开启关闭自动化?
其实苹果提供了Siri Shortcuts,他是模拟我们日常创建快捷指令,然后用Siri来执行这个快捷指令。
再用涂鸦SDK把想要执行的动作写入在快捷指令中,就可以完成开发Siri来控制设备,执行场景,开关自动化。
我们以Siri语音执行场景为例
第一步、集成涂鸦智能生活App SDK来创建场景,以供Siri语音执行
按照官方文档集成SDK,完成创建场景
https://developer.tuya.com/cn/docs/app- ... A%E6%99%AF
第二步、搭建Siri Shortcuts来实现创建快捷方式,这样Siri就可以执行该快捷方式
一.如何构建 Siri Shortcut
Siri Shortcuts 是 IOS12 引入的新特性来实现 siri 快捷控制。而实现这个功能需要一定的场景需求,比如功能需要满足:
1.App 的关键功能
2.用户有重复性的行为
3.随时都可以执行的行为
这些需求建议接入 Siri Shortcut。并不建议使用不频繁或非关键型的所有功能都进行接入。本次以场景(一键执行)的功能来实现。
二.使用 Intent 实现功能
Shortcut 可以通过 NSUserActivity 和 Intents 两种模式来实现。NSUserActivity 来实现 Shortcut 相对来说比较简单,对于那种需要通过打开客户端来完成后续动作和任务的捷径来说很合适。Intents苹果推荐的更多的是不需要打开客户端的 Action。本次使用 Intent来实现该功能。
1.创建并配置 Sirikit Intent Definition File 文件
1)点击 File->new->File
2)创建文件完成之后,创建自定义的 Intent
3)创建完成之后开始配置文件配置 Custom Intent 信息
Category:这里选择 run 运行,选择不同的类,在执行的时候会显示不同交互。
Title:显示快捷控制标题,这里标题可以配置成动态的信息。
Description: 详情描述信息
Category、Title、Description 会助于 Siri 进行语义分析和实时的推荐
4)配置 Parameters 参数
Intent 传递的数据,目前使用的功能是一键执行的场景,所以设置了 sceneid 和 sceneName的参数。Siri 在解析用户语音的时候,会将可能对应的参数提取出来。同时这些参数都是Handler 回调代理方法中 Intent 对象的属性。
5)配置Response
根据功能情况设置property信息和responseCode信息。如根据不同错误情况定义不同的response errorcode[用户未登录/场景已删除/家庭已删除等]
6)填写custom class,生成相应的intent类
基本配置信息完成之后,填写 custom class 信息点击运行,会生成 Intent 类。