微信小程序最近比较火爆,所以抽空做了个客服机器人的小程序,来回答之前坦克游戏中的常见问题。当然这个小程序也很容易修改为其他类型的自动客服,需要做的仅仅是在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 }) } }); },
运行的效果见下图:
输入
结果