(欢迎转载。本文源地址:http://blog.csdn.net/speeds3/article/details/77326122)
微信小程序最近比较火爆,所以抽空做了个客服机器人的小程序,来回答之前坦克游戏中的常见问题。当然这个小程序也很容易修改为其他类型的自动客服,需要做的仅仅是在olami平台加上相应的问题和答案。
微信扫一扫体验小程序
整个小程序界面包含2个部分,一部分用于显示回答,一部分为输入框。小程序的核心就是向olami服务器发送http请求,然后处理结果并显示出来。olami接口的详细使用方法可以参考置顶的两篇博客。处理输入的代码如下:
bindInput: function (e) {
var that = this;
var input = e.detail.value;
var timeStamp = new Date().getTime();
var sign = \'1df21860a96a4509bcb50957bbdd6eccapi=nliappkey=382c5f83fb67458a99ca7b2eee17473etimestamp=\' + timeStamp + \'1df21860a96a4509bcb50957bbdd6ecc\';
var MD5 = require(\'../../utils/MD5.js\')
sign = MD5.md5(sign);
wx.request({
url: \'https://cn.olami.ai/cloudservice/api\',
data: {
appkey: \'382c5f83fb67458a99ca7b2eee17473e\',
api: \'nli\',
timestamp: timeStamp,
sign: sign,
rq: JSON.stringify({
"data_type": "stt",
"data": {
"input_type": 1,
"text": input
}
}),
cusid: app.globalData.custId,
},
header: {
\'content-type\': \'application/x-www-form-urlencoded\'
},
method: \'POST\',
success: function(res) {
var result = \'\';
if (res.data.status == \'ok\') {
if (res.data.data.nli.length != 0) {
result = res.data.data.nli[0].desc_obj.result
}
}
that.setData({
userInfo: {},
userinput: \'\',
result: result
})
}
});
},
运行的效果见下图:
输入
结果
帮助功能简介
要实现自动客服功能,只需以下几步:
-
在olami平台进入nli系统,新建一个语法模块。
-
进入模块,编辑grammar,新增需要支持的问题以及相应的答案。
图中的内容就是支持的问句,这里使用了平台的OSL语法描述语言,可以在一个grammar中支持多个类似的说法。osl语言说明在此处。当然,如果图省事,直接写完整句子也行,只是这样的话只有用这个完整的问句才能得到答案。
输出方式选答案,下面就可以添加多个答案,这些答案是随机输出的,可以写多个意思一样的答案,这样不会显得那么单调。
- 语法编写完成后发布一下。
如果在应用管理里配置好了模块,在小程序里就可以看到相应的问题已经支持回复了。以后要添加新支持的问题,只要重复2~3步就可以了。
客服功能支持的语句有:
- 这是个什么游戏
- 这个小程序是干什么的
- 有哪些语音指令
- 这个游戏怎么玩
后续可以根据需要扩充语法。
小程序审核一直不通过,先放出源码,感兴趣的朋友可以用开发工具调试查看。
下载地址:http://download.csdn.net/download/speeds3/9938041
扫描二维码,加入智能语义理解、人工智能开发爱好者群:
推荐一些其他的关于OLAMI使用的文章:
自然语言处理-实际开发:用语义开放平台olami写一个翻译的应用
微信小程序+OLAMI自然语言API接口制作智能查询工具–快递、聊天、日历等
使用OLAMI SDK和讯飞语音合成制作一个语音回复的短信小助手
请发表评论