惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Microsoft Azure Blog
Microsoft Azure Blog
WordPress大学
WordPress大学
Google DeepMind News
Google DeepMind News
美团技术团队
大猫的无限游戏
大猫的无限游戏
H
Help Net Security
小众软件
小众软件
aimingoo的专栏
aimingoo的专栏
博客园 - 聂微东
让小产品的独立变现更简单 - ezindie.com
让小产品的独立变现更简单 - ezindie.com
M
MIT News - Artificial intelligence
酷 壳 – CoolShell
酷 壳 – CoolShell
博客园 - Franky
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
Microsoft Security Blog
Microsoft Security Blog
F
Fortinet All Blogs
A
About on SuperTechFans
Recent Announcements
Recent Announcements
D
Docker
Vercel News
Vercel News
Engineering at Meta
Engineering at Meta
腾讯CDC
Martin Fowler
Martin Fowler
阮一峰的网络日志
阮一峰的网络日志

夜行人

回家路上 第一期的直播演示项目 震动检测器 正能量 在线参观CodeLab Neverland 发布 CodeLab Adapter 3.3.1 DynamicTable 之 纸糊方向盘 CodeLab DynamicTable: 一个可实施的技术方案 CodeLab Insight 发布 Alpha 版 情人节 Home Assistant 周报 && IoT 周报 (02) Joplin: 关注隐私的 Evernote 开源替代软件 浏览器的未来与 Web 传感器 Home Assistant 周报 && IoT 周报 (01) 百宝箱(01) 论自由 介绍 WebThings Home Assistant 周报 && iot 周报 (00) 百宝箱(00) 毛姆读书心得 传世之作 周末徒步 CodeLab Adapter ❤️ Jupyter/Python 航班 躲雨 夏令营途中 [译]思想--作为一种技术 The future of coding 美国之行 三门问题的程序模拟
CodeLab ❤ Siri
CodeLab · 2020-06-28 · via 夜行人

文章目录

我们近期发布了一个新的 Adapter 插件: extension_Siri.py (可在插件市场下载)

使用该插件,可将 Siri 接入到 Scratch,并于 CodeLab 可编程空间里的一切互动。

Demo

原理

原理其实很简单:

  • 构建一个接受 http 请求的 web server
  • 使用 Siri 的输入(语音识别结果)构建 http 请求

来自快接指令的输入经由 http post 到 web server,再自动转化为 EIM 消息进入 Adapter。之后进入 CodeLab Scratch 。

值得注意的是,通过使用快捷指令里的列表,你可以构建多轮对话。

构建一个接受 http 请求的 web server

extension_Siri.py 实际上是一个 web server,fork 自extension_webserver.py

插件运行之后,会打开一个新页面,显示当前计算机的 IP。

它有两个重要 API:

  • 接受来自 http://<IP>:18081/api/message/siri?message=hiGET请求, 并将请求参数 message 的值作为 eim 消息发送到 Scratch。
  • 接受来自 http://<IP>:18081/api/message/siriPOST请求, 并将请求参数 message 的值作为 eim 消息发送到 Scratch(json)

如果你的请求参数包含中文,建议使用 POST。

熟悉 Adapter 的朋友可能会发现,该插件的功能和 Adapter REST API相近,为何要写成独立插件?原因是 Adapter 默认采用 https,但 https 容易遇到各种安全机制问题, http api 则不会遇到这类问题。

使用文档

文档

进一步

如果你想对文本做进一步的语义处理,又不想使用云端 API,推荐使用Rasa_NLU_Chi,我在 Scratch 里写一个简单的 Adapter 语义解析插件。

以下是它的应用案例: hey siri

NLU 的处理结果如何操控实物呢?ThingTalkWebThings 提供了很好的思路。

参考

文章作者 CodeLab

上次更新 2020-06-28