(歡迎轉載。本文源地址: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和訊飛語音合成制作一個語音回復的短信小助手