首页 > 评测 > 让Cortana和你的树莓派say HI
让Cortana和你的树莓派say HI
- [导读]
- 很多人的树莓派都在桌子脚下面吃灰,诸如兴趣消逝,工作太忙,硬件配置看不上等等诸多原因使然。看起来我们国家的工程师似乎更加水深火热,困于生活,不能像老外一样那么富有创作力。但是还是希望大家能够拿出自己的树莓派,擦擦灰,和我们一起找回“初心”,回归最开始的那一份简单的快乐。本文给大家介绍一下如何将时下当红花旦Cortana与开源开发板树莓派的邂逅..."Hi~"
| 21ic Rocky编译,原作来自Ron Dagdag |转载需注明出处!
Cortana是微软出品的人工智能助理,与Siri和Google NOW并称为三傻姐妹组
如果你还不知道Cortana是啥,就打开你的win10或者去应用商店下一个在手机上好好感受一下…
本文并不是要深究Cortana是怎么回事,而是要手把手地教会你——如何使用Cortana Skill和Bot Framework来与你的树莓派实现互动。
下面可以先看一下最终效果视频:
此教程来自国外树莓派爱好者Ron Dagdag,他通过自己的手机与树莓派完成了一次友好的Say HI。下面是他的教程原文
---
硬件:树莓派3B
软件:Bot Framework、Cortana Skill、ngrok.io
此教程是关于如何在树莓派上创建一个chatbot并且加入Cortana的功能。通过简单的步骤学习你就能够实现一个’Hello World’bot的demo了。
为什么选择树莓派?这开启了很多种可能性。你可以将其与Johnny-Five连接来控制你的IoT设备,使用内置的Node-Red,将数据推送到VR网站…等等等等,不怕你做不到,就怕你想不到。
在此教程中bot所调用的名称是’Echo’,需要使用它的时候,只需说出“Cortana,tell Echo hi Raspberry Pi”,然后这句话就会被传送到树莓派上面,并且回复给Cortana,Cortana再来重复说过的话。
介绍:微软Bot 框架
先来介绍一下Bot Framework的功能。通过Bot Framework可以在各种不同线上平台上实现chatbot的功能,不论是Skype,网站,Slack,邮件,脸书或者任何平台。最近,Cornata最新版Microsoft Build 2017版本发布,它的底层技术就是ASP.NET Web API。在Azure Console创建一个BotID,一个AppID和一个APP密码,然后就可以成功创建你的chatbot了。这些参数在后面讲Chatbot和你的API连接的时候会用的上。
Chatbots可以host在Azure App服务器,或者任何运行.NET或Node.js服务器中。我们这里就将其host在树莓派中并且使用NodeIS。
Bot框架提供一个聊天界面接口和多频道支持,它仅仅是一个web API。LUIS.ai是同样来自Azure的智能自然语言处理(NLP)服务。我们可以简单略过它,将精力放在Bot Framework上面,来搭建这一服务。
第1步:在树莓派上搭建Bot框架
这一部分分为Node.js安装,Ngrok安装
Node.js安装:
这里我们首先确保Raspbain是最新版本,然后我们来安装Node.js。
将你的树莓派连接至网络,然后打开终端窗口,键入如下指令:
wget http://node-arm.herokuapp.com/node_latest_armhf.deb sudo dpkg -i node_latest_armhf.deb
按照如下指令查看你的树莓派安装Node.js版本
node -v
如示此版本号为V。
Ngrok安装:
Ngrok允许你将本地计算机上运行的Web服务器公开到互联网。只需告诉ngrok你的网络服务器正在侦听哪个端口即可。
去https://ngrok.com/下载对应安装包
复制此repo:https://github.com/rondagdag/cortana-rpibots
git clone
代码非常的简单,将其看作是一个web API服务器即可,可以回复任何发送过的信息。
require('dotenv').config();
var restify = require('restify');
var builder = require('botbuilder');
// Setup Restify Server
var server = restify.createServer();
server.listen(process.env.port || process.env.PORT || 3978, function () {
console.log('%s listening to %s', server.name, server.url);
});
// Create chat connector for communicating with the Bot Framework Service
var connector = new builder.ChatConnector({
appId: process.env.MICROSOFT_APP_ID,
appPassword: process.env.MICROSOFT_APP_PASSWORD
});
// Listen for messages from users
server.post('/api/messages', connector.listen());
// Receive messages from the user and respond by echoing each message back (prefixed with 'You said:')
var bot = new builder.UniversalBot(connector, function (session) {
console.log(session.message.text);
session.say(session.message.text, session.message.text);
});
这提供了很多可能,你可以将其与Johnny-Five连接来控制你的IoT设备,使用内置的Node-Red,将数据推送到VR网站…等等等等,不怕你做不到,就怕你想不到。
- 本文系21ic原创,未经许可禁止转载!
网友评论
- 联系人:巧克力娃娃
- 邮箱:board@21ic.com
- 我要投稿
-
欢迎入驻,开放投稿
-
人均百万?英伟达中国员工收入曝光! 2024-08-29
-
《黑神话:悟空》玩家硬盘升级攻略:提升游戏体验,畅享3A大作 2024-08-29
-
数睿数据参加《系统与软件工程 低代码开发平台通用技术要求》国家标准编制 2024-08-29
- NRF52810蓝牙数字耳机找人定制
预算:¥30005天前
- 125KW模块式PCS软硬件外包开发
预算:¥1100000015小时前
- 12V汽车启动电源项目BMS设计
预算:¥50000023小时前
- 数据可视化软件 开发
预算:¥5000023小时前
- PLC项目调试修改
预算:¥100001天前
- 起动电机控制器开发
预算:¥1100001天前