• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    微信公众平台开发之语音识别.Net代码解析

    语音识别这个功能属于高级功能,必须微信实名认证后才能实现,认证费用300元/年,如果你作为开发者可以申请测试帐号,也是可以的。首先建立一个微信消息类,这个类比之前多了一个属性。

     class wxmessage 
      { 
        public string FromUserName { get; set; } 
        public string ToUserName { get; set; } 
        public string MsgType { get; set; } 
        public string EventName { get; set; } 
        public string Content { get; set; }
        public string Recognition { get; set; }
        public string EventKey { get; set; } 
      } 
    

    语音识别是微信自带的功能,非常强大无需我们做过多的操作:

    protected void Page_Load(object sender, EventArgs e)
       {
         wxmessage wx = GetWxMessage();
         string res = "";
    
         if (!string.IsNullOrEmpty(wx.EventName)  wx.EventName.Trim() == "subscribe")
         {//刚关注时的时间,用于欢迎词
           string content = "";
           content = "/:rose欢迎北京永杰友信科技有限公司/:rose\n直接回复“你好”";
           res = sendTextMessage(wx, content);
         }
         else
         {
           if (wx.MsgType == "text"  wx.Content == "你好")
           {
             res = sendTextMessage(wx, "你好,欢迎使用北京永杰友信科技有限公司公共微信平台!");
           }
           else if (wx.MsgType == "voice")//识别消息类型为语音
           {
             res = sendTextMessage(wx, wx.Recognition);//wx.Recognition就是语音识别的结果了,我们直接引用,以文本形式反馈就OK了
    
           }
           else
           {
             res = sendTextMessage(wx, "你好,未能识别消息!");
           }
         }
    
         Response.Write(res);
       }
    
     private wxmessage GetWxMessage()
       {
         wxmessage wx = new wxmessage();
         StreamReader str = new StreamReader(Request.InputStream, System.Text.Encoding.UTF8);
         XmlDocument xml = new XmlDocument();
         xml.Load(str);
         wx.ToUserName = xml.SelectSingleNode("xml").SelectSingleNode("ToUserName").InnerText;
         wx.FromUserName = xml.SelectSingleNode("xml").SelectSingleNode("FromUserName").InnerText;
         wx.MsgType = xml.SelectSingleNode("xml").SelectSingleNode("MsgType").InnerText;
         if (wx.MsgType.Trim() == "text")
         {
           wx.Content = xml.SelectSingleNode("xml").SelectSingleNode("Content").InnerText;
         }
         if (wx.MsgType.Trim() == "event")
         {
           wx.EventName = xml.SelectSingleNode("xml").SelectSingleNode("Event").InnerText;
         }
         if (wx.MsgType.Trim() == "voice")//如果是语音消息的话就把识别结果赋值给实体类的相应属性Recognition 
         {
           wx.Recognition = xml.SelectSingleNode("xml").SelectSingleNode("Recognition").InnerText;
         }
         
         return wx;
       }
    
    
       ///  
       /// 发送文字消息 
       ///  
       /// 获取的收发者信息 
       /// 内容 
       ///  
       private string sendTextMessage(wxmessage wx, string content)
       {
         string res = string.Format(@" ",
           wx.FromUserName, wx.ToUserName, DateTime.Now, content);
         return res;
       }
    

    以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

    您可能感兴趣的文章:
    • Android仿微信语音聊天界面设计
    • android仿微信聊天界面 语音录制功能
    • Android自定义UI实现微信语音
    • Android 高仿微信语音聊天页面高斯模糊(毛玻璃效果)
    • 微信公众号开发之语音消息识别php代码
    • java微信企业号开发之发送消息(文本、图片、语音)
    • Android仿微信语音聊天功能
    • IOS开发第三方语音-微信语音
    • 微信JS接口汇总及使用详解
    • js仿微信语音播放实现思路
    上一篇:asp.net使用FCK编辑器中的分页符实现长文章分页功能
    下一篇:.Net微信开发之如何解决access_token过期问题
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    微信公众平台开发之语音识别.Net代码解析 微信,公众,平台,开,发之,