首頁(yè) > 評(píng)測(cè) > 讓Cortana和你的樹(shù)莓派say HI
讓Cortana和你的樹(shù)莓派say HI
- [導(dǎo)讀]
- 很多人的樹(shù)莓派都在桌子腳下面吃灰,諸如興趣消逝,工作太忙,硬件配置看不上等等諸多原因使然?雌饋(lái)我們國(guó)家的工程師似乎更加水深火熱,困于生活,不能像老外一樣那么富有創(chuàng)作力。但是還是希望大家能夠拿出自己的樹(shù)莓派,擦擦灰,和我們一起找回“初心”,回歸最開(kāi)始的那一份簡(jiǎn)單的快樂(lè)。本文給大家介紹一下如何將時(shí)下當(dāng)紅花旦Cortana與開(kāi)源開(kāi)發(fā)板樹(shù)莓派的邂逅..."Hi~"
| 21ic Rocky編譯,原作來(lái)自Ron Dagdag |轉(zhuǎn)載需注明出處!
Cortana是微軟出品的人工智能助理,與Siri和Google NOW并稱(chēng)為三傻姐妹組
如果你還不知道Cortana是啥,就打開(kāi)你的win10或者去應(yīng)用商店下一個(gè)在手機(jī)上好好感受一下…
本文并不是要深究Cortana是怎么回事,而是要手把手地教會(huì)你——如何使用Cortana Skill和Bot Framework來(lái)與你的樹(shù)莓派實(shí)現(xiàn)互動(dòng)。
下面可以先看一下最終效果視頻:
此教程來(lái)自國(guó)外樹(shù)莓派愛(ài)好者Ron Dagdag,他通過(guò)自己的手機(jī)與樹(shù)莓派完成了一次友好的Say HI。下面是他的教程原文
---
硬件:樹(shù)莓派3B
軟件:Bot Framework、Cortana Skill、ngrok.io
此教程是關(guān)于如何在樹(shù)莓派上創(chuàng)建一個(gè)chatbot并且加入Cortana的功能。通過(guò)簡(jiǎn)單的步驟學(xué)習(xí)你就能夠?qū)崿F(xiàn)一個(gè)’Hello World’bot的demo了。
為什么選擇樹(shù)莓派?這開(kāi)啟了很多種可能性。你可以將其與Johnny-Five連接來(lái)控制你的IoT設(shè)備,使用內(nèi)置的Node-Red,將數(shù)據(jù)推送到VR網(wǎng)站…等等等等,不怕你做不到,就怕你想不到。
在此教程中bot所調(diào)用的名稱(chēng)是’Echo’,需要使用它的時(shí)候,只需說(shuō)出“Cortana,tell Echo hi Raspberry Pi”,然后這句話就會(huì)被傳送到樹(shù)莓派上面,并且回復(fù)給Cortana,Cortana再來(lái)重復(fù)說(shuō)過(guò)的話。
介紹:微軟Bot 框架
先來(lái)介紹一下Bot Framework的功能。通過(guò)Bot Framework可以在各種不同線上平臺(tái)上實(shí)現(xiàn)chatbot的功能,不論是Skype,網(wǎng)站,Slack,郵件,臉書(shū)或者任何平臺(tái)。最近,Cornata最新版Microsoft Build 2017版本發(fā)布,它的底層技術(shù)就是ASP.NET Web API。在Azure Console創(chuàng)建一個(gè)BotID,一個(gè)AppID和一個(gè)APP密碼,然后就可以成功創(chuàng)建你的chatbot了。這些參數(shù)在后面講Chatbot和你的API連接的時(shí)候會(huì)用的上。
Chatbots可以host在Azure App服務(wù)器,或者任何運(yùn)行.NET或Node.js服務(wù)器中。我們這里就將其host在樹(shù)莓派中并且使用NodeIS。
Bot框架提供一個(gè)聊天界面接口和多頻道支持,它僅僅是一個(gè)web API。LUIS.ai是同樣來(lái)自Azure的智能自然語(yǔ)言處理(NLP)服務(wù)。我們可以簡(jiǎn)單略過(guò)它,將精力放在Bot Framework上面,來(lái)搭建這一服務(wù)。
第1步:在樹(shù)莓派上搭建Bot框架
這一部分分為Node.js安裝,Ngrok安裝
Node.js安裝:
這里我們首先確保Raspbain是最新版本,然后我們來(lái)安裝Node.js。
將你的樹(shù)莓派連接至網(wǎng)絡(luò),然后打開(kāi)終端窗口,鍵入如下指令:
wget http://node-arm.herokuapp.com/node_latest_armhf.deb sudo dpkg -i node_latest_armhf.deb
按照如下指令查看你的樹(shù)莓派安裝Node.js版本
node -v
如示此版本號(hào)為V。
Ngrok安裝:
Ngrok允許你將本地計(jì)算機(jī)上運(yùn)行的Web服務(wù)器公開(kāi)到互聯(lián)網(wǎng)。只需告訴ngrok你的網(wǎng)絡(luò)服務(wù)器正在偵聽(tīng)哪個(gè)端口即可。
去https://ngrok.com/下載對(duì)應(yīng)安裝包
復(fù)制此repo:https://github.com/rondagdag/cortana-rpibots
git clone
代碼非常的簡(jiǎn)單,將其看作是一個(gè)web API服務(wù)器即可,可以回復(fù)任何發(fā)送過(guò)的信息。
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連接來(lái)控制你的IoT設(shè)備,使用內(nèi)置的Node-Red,將數(shù)據(jù)推送到VR網(wǎng)站…等等等等,不怕你做不到,就怕你想不到。
- 本文系21ic原創(chuàng),未經(jīng)許可禁止轉(zhuǎn)載!
網(wǎng)友評(píng)論
- 聯(lián)系人:巧克力娃娃
- 郵箱:board@21ic.com
- 我要投稿
-
歡迎入駐,開(kāi)放投稿
- NRF52810藍(lán)牙數(shù)字耳機(jī)找人定制
預(yù)算:¥30005天前
- 125KW模塊式PCS軟硬件外包開(kāi)發(fā)
預(yù)算:¥1100000015小時(shí)前
- 12V汽車(chē)啟動(dòng)電源項(xiàng)目BMS設(shè)計(jì)
預(yù)算:¥50000023小時(shí)前
- 數(shù)據(jù)可視化軟件 開(kāi)發(fā)
預(yù)算:¥5000023小時(shí)前
- PLC項(xiàng)目調(diào)試修改
預(yù)算:¥100001天前
- 起動(dòng)電機(jī)控制器開(kāi)發(fā)
預(yù)算:¥1100001天前