前言:随着万物互联时代的到来,各种传统电器都开始支持联网。而智能音响把语音作为一个物联网的入口,带来不同的交互体验。amazon echo是目前最成熟的智能音响,因此选择echo来开发哒
1、BASIC
先了解下概念呗
1.1你的开发基础:
1、熟练使用onenet,设备已经采用edp协议连接到onenet。
2、你已经拥有aws账号,会一点python,能看一点英语
辅助软件:
1、postman (调试软件,模拟http,并且可以直接生成各种语言的代码)
现在开始吧!
1.2 什么是echo
一个拥有麦克风阵列的音响(采用adi芯片,拥有远场识别,回音消除…)
目前echo使用的语音助手叫做alexa,只支持英语。
1.3 什么是OneNET
你猜…
1.4 语音服务流程
这个图要从南向北来看,首先使用avs服务将RAW data转换成文字信息,再使用alexa skill将文字信息转换成json格式的意图(intend),最后将intend送到aws lambda中进行处理,并在aws lambda中通过rest api的方式发送cmd到onenet,最后通过OneNET来控制设备。
alexa voice service(avs):语音识别
alexa skill :经过用户配置的专用场景语义理解
aws lambda:跑着代码的云服务器
2、开发
2.1概述
而echo连接到onenet的逻辑如下:
echo(麦克风进行声音拾取)- - - alexa(进行关键词提取,事件提取,并以json格式发送) - - - aws lambda (根据alexa发送过来的事件进行处理,并在对应事件中调用onenet的API) - - - onenet收到发送过来的API后对设备进行命令下发
要进行3份代码的撰写
这样分层是好事情~虽然麻烦一点,但每一层都简洁明了
- alexa skill
- aws lambda
- 设备端(stm32通过edp连接onenet)
2.1、alexa skill
主要看官方文档~写得很详细,这是我的步骤
http://blog.csdn.net/jo_joe/article/details/79038231
2.2、lambda处理
可以直接使用python的模板。
在blueprint蓝图中,选择alexa-skills-kit-color。这个是跑py的,根据自己的需要在里面添加修改就可以啦!
我在里面使用了一个request,用于给onenet发送cmd。可以参考
http://blog.csdn.net/jo_joe/article/details/78257777
python的部分
PS: 使用request包的话要自己打包上传,lambda里面没有提供这个。打包时要在一级目录下打包,不要返回上一级总目录下来打包
2.3、如何使用OneNET Rest API(另外写篇文章来讲这个吧)
请看这篇~
3、OVER
最后附上演示视频:
https://m.miaopai.com/show/channel/gWICso2yUZ~DtIZCKutcRnWSBrSypoJVdct0EA__?from=timeline
后续扩展:
暂无
未来趋势:
人工智能12345级:目前是1级(kaiser的文章)记不得知乎还是微博啊
参考资料:
1、机智云接入亚马逊echo音响教程
2、请直接搜索 “西红柿炖番茄”,他的博客黑不错