作者doomdied (Died)
看板Soft_Job
标题[心得] ChatBot开发 - Bot Finance
时间Tue Jun 20 01:22:53 2017
近几年ChatBot很红,我也找时间研究了一下,刚好微软在有Bot Framework
跟Bot Connecter可以很方便的开发跟串接,所以就利用空闲时间开发了一个
可以帮忙查股票资讯、汇率、基金(目前只有部分共同基金,暂不开放)的
ChatBot叫做Bot Finance,底下会稍微介绍一下,但是不赘述太多细节。
微软Bot Framework
https://dev.botframework.com/
由於是走微软solution,所以是用C#开发,微软提供了很多文件跟范例,
可以在这边(
https://aka.ms/bf-sdk-hp )参考跟下载,除了.NET的范例,
也有提供Node.js的sample code可以使用。
目前各大IM平台几乎都有提供ChatBot串接的API,微软也做了个Bot Connecter
可以让开发者填一填资料就快速串各大平台(除了Line),好处是很省事,坏
处就是因为多中转一层所以稍微慢一点,不介意这点的话倒是不用在意。
Bot Connecter
https://dev.botframework.com/bots/
简单来说,ChatBot跟平台间的沟通说穿了就是个API串接而已,在.NET上最
方便的方法就是开个WebAPI专案去串就好,其他语言也有很方便的REST套件
可用,如果透过Bot Connecter去串平台的话,它丢过来的Activity会有这几
种(
https://goo.gl/Xj2wey ),但除了skype之外不见得每个IM都会有完整
的各种状态跟资讯,所以若要对特殊状态去做处理的时候最好注意一下。
例如:Skype能取得使用者的显示名称,但FB Messenger跟Line不会,另外
各个平台(目前我串过的)都只会给一个uid,所以你不会知道实际上谁跟
chatbot聊天了,只能靠这个uid去回应或做主动推播,另外各平台对於主
动推播这件事的权限也有另外开,所以要跟回应讯息分开申请。
目前我串了三个平台,Skype,FB Messenger跟Line,Skype直接在微软的
Bot Connecter上就可以搞定,FB要到开发者申请一个App然後跟粉丝页绑定
,Line则是要去Line@ 开新帐号然後设定成使用Messaging API。
FB :
https://developers.facebook.com/
Line :
https://admin-official.line.me/
因为微软的Bot Connecter没有支援Line,所以要跟Line串要自己写,其实看
看文件也蛮简单的,Line的文件范例看一看就差不多知道怎麽做。
Line Messaging API 文件 :
https://devdocs.line.me/en/
说了半天,我做的Bot Finance其实很简单,就是下指令让Bot回你资料,因为
懒得做语意分析,所以如果没说到关键字只会回原话而已,如果要玩更复杂的
东西,像是语意分析,语音沟通回应等等,其实微软也都有提供服务可以用,
我有试用过Microsoft LUIS这个语意分析服务,其实很方便,训练一阵子应该
就可以符合特定需求了,不会像过去弄个语意分析就可以写篇论文。
_________________________________________
这边分享一下我的Bot Finance,加入方式如下
Skype:
https://join.skype.com/bot/7f871dd8-a726-44ff-a242-ce79e4cddb47
Facebook Messenger:
https://www.messenger.com/t/1484529014940222
Line:
https://line.me/R/ti/p/%40cao6168o
输入
help会有基本的说明
https://i.imgur.com/FUG34xi.png
要查询台湾50的股价,可以输入
show tpe:0050 http://i.imgur.com/UsmaRfN.png
或是直接输入
tw:0050也可以达到同样的目的
查询汇率的方式则是输入
cur:JPYTWD (日圆兑台币汇率)
若懒得每次都一个个查,也可以使用
add指令建立清单,再使用
show一次列出
http://i.imgur.com/8aS9jv2.png
PS:若使用add指令,将会在server存入uid与金融标的资料,虽然无法从uid找到
是谁在使用,但还是先声明一下。
更多说明可以参考
https://goo.gl/mPWQ9y ,这边就不赘述了。
_________________________________________
随着各IM平台支援了卡片讯息,结帐流程,今年开始ChatBot应该会更热门
,目前国内业者已经有用ChatBot做电商购物跟客服查询的公司出现,之後
应该会有更多应用,有兴趣的人可以拨空玩玩,玩过就会知道其实不是多
高难度的东西。
以上,谢谢大家。
--
※ 发信站: 批踢踢实业坊(ptt.cc), 来自: 220.135.75.1
※ 文章网址: https://webptt.com/cn.aspx?n=bbs/Soft_Job/M.1497892982.A.08F.html
1F:推 starcraftiii: 感觉真的蛮有趣的样子 06/20 05:47
2F:推 jjwei: push! 06/20 08:01
3F:→ jimmy689: 最近也在玩软软ㄉBotframework 06/20 08:33
4F:→ jimmy689: Skype上支援Bot群聊, FB不支援 06/20 08:34
5F:→ jimmy689: 不过FB的Bot能送除了text image card三种之外的格式 06/20 08:34
6F:→ jimmy689: 例如html跟button,互动较好 06/20 08:35
因为各家的支援性不一样,所以为了跨平台所以我还是先只做文字部分
就连文字支援性每家平台也都不一样了XD
7F:推 ncuyes: 他有支援中文吗 06/20 10:29
如果是问语意分析服务的话,有支援中文
如果是Bot Framework的话,当然,因为是看你怎麽用XD
8F:推 mister12: 有喔 06/20 13:11
9F:推 cutekid: 大推(Y) 06/20 14:22
10F:→ fufrank724: 可以请教您股价查询是用券商api还是爬虫吗 06/20 15:02
用爬虫,不过是有人查才去爬,因为要支援的太多了,没办法事先爬
※ 编辑: doomdied (220.135.75.1), 06/20/2017 15:55:24
11F:推 VisualStudio: 推推 06/20 21:24
12F:→ viper9709: 推~感谢分享 06/21 23:01