E企盈营销工具技术服务商 热线:4006-838-530

微信小程序语音聊天智能对话(demo)

E企盈直播平台营销卖货系统

项目中用到了 olami sdk把录音或者文字转化为用户可以理解的json字符串。效果图重要jS代码: //手指按下时 语音转文字  voiceToChar:function(){ var urls = app.globalData.slikToCharUrl; var voiceFilePath = that.data.filePath; if(voiceFilePath == null){      console.log(“[Console log]:File path do not exist!”);      wx.showModal({        title: ‘录音文件不存在’,        content: ‘我也不知道哪错了,反正你就再试一次吧!’,        showCancel: false,        confirmText: ‘确定’,        confirmColor: ‘#09BB07’, }) return; } var appkey = app.globalData.NLPAppkey; var appsecret = app.globalData.NLPAppSecret; var NLPCusid = app.globalData.NLPCusid;    wx.showLoading({      title: ‘语音识别中…’, })    wx.uploadFile({      url: urls,      filePath: voiceFilePath,      name: ‘file’,      formData: { “appKey”: appkey, “appSecret”: appsecret, “userId”: NLPCusid },      header: { ‘content-type’: ‘multipart/form-data’ },      success: function (res) {        wx.hideLoading(); var data = JSON.parse(res.data); var seg = JSON.parse(data.result).seg;        console.log(“[Console log]:Voice to char:” + seg); if(seg == null || seg.length == 0){          wx.showModal({            title: ‘录音识别失败’,            content: “我什么都没听到,你再说一遍!”,            showCancel: false,            success: function (res) { } }); return; }        that.addChat(seg, ‘r’);        console.log(“[Console log]:Add user voice input to chat list”);        that.sendRequest(seg); return; },      fail: function (res) {        console.log(“[Console log]:Voice upload failed:” + res.errMsg);        wx.hideLoading();        wx.showModal({          title: ‘录音识别失败’,          content: “请你离WIFI近一点再试一次!”,          showCancel: false,          success: function (res) { } }); } }); },olami 技术的识别语音代码:// 发送语料到语义平台  sendChat: function (e) { let word = e.detail.value.ask_word ? e.detail.value.ask_word : e.detail.value;    console.log(“[Console log]:User input:” + word);    that.addChat(word, ‘r’);    console.log(“[Console log]:Add user input to chat list”);    that.setData({      askWord: ”,      sendButtDisable: true, });    that.sendRequest(word); }, // 发送请求到语义平台  sendRequest(corpus){    app.NLIRequest(corpus, { ‘success’: function (res) { if (res.status == “error”) {          wx.showToast({            title: ‘返回数据有误!’, }) return; } var resjson = JSON.parse(res); var data = JSON.stringify(resjson.data);        that.NLIProcess(data); }, ‘fail’: function (res) {        wx.showToast({          title: ‘请求失败!’, }) return; } });  }, // 处理语义 NLIProcess: function(res){ var nlires = JSON.parse(res); var nliArray = nlires.nli; if(nliArray == null || nliArray.length == 0){      wx.showToast({        title: ‘返回数据有误!’, }) return; } var answer = nliArray[0].desc_obj.result; if(answer == null){      wx.showToast({        title: ‘返回数据有误!’, }) return; }    console.log(“[Console log]:Add answer to chat list…”);    that.addChat(answer, ‘l’); var dataArray = nliArray[0].data_obj; if(dataArray != null && dataArray.length > 0){ var objType = nliArray[0].type; if(objType == ‘selection’ && dataArray.length > 1){        that.newsProcess(dataArray); return; } if (objType == ‘news’ && dataArray.length == 1) {        console.log(“[Console log]:Add news to chat list…”); var title = dataArray[0].title; var detail = dataArray[0].detail; var news = title + “” + detail;         that.addChat(news, ‘l’); return; } var content = dataArray[0].content; if (content != null && content != answer){        console.log(“[Console log]:Add content to chat list…”);        that.addChat(content, ‘l’); } } return; },源码:百度云:https://pan.baidu.com/s/1jHJj1HG专栏作家honey缘木鱼。小程序社区博主,坚持原创分享技术博文。本文原创发布于小程序社区。未经许可,禁止转载原文地址:微信小程序语音聊天智能对话(demo)-教程-小程序社区-微信小程序-微信小程序开发社区-小程序开发论坛-微信小程序联盟微信小程序

赞(0) 打赏
未经允许不得转载:E企盈小程序开发-热线:4006-838-530 » 微信小程序语音聊天智能对话(demo)
分享到: 更多 (0)
E企盈小程序直播营销卖货系统
E企盈直播平台营销卖货系统

评论 抢沙发

E企盈小程序开发

联系我们联系我们

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏