侯体宗的博客
  • 首页
  • Hyperf版
  • beego仿版
  • 人生(杂谈)
  • 技术
  • 关于我
  • 更多分类
    • 文件下载
    • 文字修仙
    • 群聊
    • 九宫格抽奖
    • 拼图
    • 消消乐
    • 相册

微信公众号开发之语音消息识别php代码

微信(小程序)  /  管理员 发布于 3年前   169

本文实例为大家分享了php微信语音消息识别代码,供大家参考,具体内容如下

1.开通语音识别(默认关闭)

2.语音识别

请注意,开通语音识别后,用户每次发送语音给公众号时,微信会在推送的语音消息XML数据包中,增加一个Recognition字段(注:由于客户端缓存,开发者开启或者关闭语音识别功能,对新关注者立刻生效,对已关注用户需要24小时生效。开发者可以重新关注此帐号进行测试)。开启语音识别后的语音XML数据包如下:

valid();//接口验证$wechatObj->responseMsg();//调用回复消息方法class wechatCallbackapiTest{ public function valid() {  $echoStr = $_GET["echostr"];  //valid signature , option  if($this->checkSignature()){   echo $echoStr;   exit;  } } public function responseMsg() {  //get post data, May be due to the different environments  $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];   //extract post data  if (!empty($postStr)){    /* libxml_disable_entity_loader is to prevent XML eXternal Entity Injection,     the best way is to check the validity of xml by yourself */    libxml_disable_entity_loader(true);     $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);    $fromUsername = $postObj->FromUserName;    $toUsername = $postObj->ToUserName;    $keyword = trim($postObj->Content);    $time = time();    $msgType = $postObj->MsgType;//消息类型    $event = $postObj->Event;//时间类型,subscribe(订阅)、unsubscribe(取消订阅)        $textTpl = "                     %s                     0       ";            switch($msgType){     case "event":     if($event=="subscribe"){      $contentStr = "Hi,欢迎关注海仙日用百货!"."\n"."回复数字'1',了解店铺地址."."\n"."回复数字'2',了解商品种类.";     }      break;     case "text"://文本消息      switch($keyword){       case "1":       $contentStr = "店铺地址:"."\n"."杭州市江干区.";        break;       case "2":       $contentStr = "商品种类:"."\n"."杯子、碗、棉签、水桶、垃圾桶、洗碗巾(刷)、拖把、扫把、"           ."衣架、粘钩、牙签、垃圾袋、保鲜袋(膜)、剪刀、水果刀、饭盒等.";       break;       default:       $contentStr = "对不起,你的内容我会稍后回复";      }     break;     case "voice"://语音消息     //语音识别     $recognition = $postObj->Recognition;     $format = $postObj->Format;     $contentStr = "你发送的是语音消息"."\n"."语音格式为:"."\n".$format."\n"."语音内容为:"."\n".$recognition;     break;    }    $msgType = "text";    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);    echo $resultStr;  }else {   echo "";   exit;  } }   private function checkSignature() {  // you must define TOKEN by yourself  if (!defined("TOKEN")) {   throw new Exception('TOKEN is not defined!');  }    $signature = $_GET["signature"];  $timestamp = $_GET["timestamp"];  $nonce = $_GET["nonce"];      $token = TOKEN;  $tmpArr = array($token, $timestamp, $nonce);  // use SORT_STRING rule  sort($tmpArr, SORT_STRING);  $tmpStr = implode( $tmpArr );  $tmpStr = sha1( $tmpStr );    if( $tmpStr == $signature ){   return true;  }else{   return false;  } }}?>

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

您可能感兴趣的文章:

  • PHP实现微信小程序人脸识别刷脸登录功能
  • PHP图像识别技术原理与实现
  • PHP实现自动识别原编码并对字符串进行编码转换的方法
  • PHP识别二维码的方法(php-zbarcode安装与使用)
  • php制作的简单验证码识别代码
  • 教你识别简单的免查杀PHP后门
  • PHP使用Face++接口开发微信公众平台人脸识别系统的方法
  • 支持生僻字且自动识别utf-8编码的php汉字转拼音类
  • php中文乱码怎么办如何让浏览器自动识别utf-8
  • PHP智能识别收货地址信息实例


  • 上一条:
    微信公众号开发之获取位置信息php代码
    下一条:
    微信公众号开发之通过接口删除菜单
  • 昵称:

    邮箱:

    0条评论 (评论内容有缓存机制,请悉知!)
    最新最热
    • 分类目录
    • 人生(杂谈)
    • 技术
    • linux
    • Java
    • php
    • 框架(架构)
    • 前端
    • ThinkPHP
    • 数据库
    • 微信(小程序)
    • Laravel
    • Redis
    • Docker
    • Go
    • swoole
    • Windows
    • Python
    • 苹果(mac/ios)
    • 相关文章
    • 小程序开发之跳转微信直播示例api(0个评论)
    • 在uni_app中开发小程序之常用功能示例代码汇总(0个评论)
    • 小程序开发之多端框架:taro(0个评论)
    • 微信小程序前端使用七牛云官方SDK上传七牛云代码示例(0个评论)
    • 百度小程序审核未通过,真机审核存在点击返回键退出小程序...解决方式之一tabBar(0个评论)
    • 近期文章
    • 在laravel框架中的5个HTTP客户端技巧分享(0个评论)
    • 在go语言中使用FFmpeg库实现PCM音频文件编码为mp3格式文件流程步骤(0个评论)
    • gopacket免安装Pcap实现驱动层流量抓包流程步骤(0个评论)
    • 在laravel项目中实现密码强度验证功能推荐扩展包:password-strength(0个评论)
    • 在go语言中用filepath.Match()函数以通配符模式匹配字符串示例(0个评论)
    • Laravel Response Classes 响应类使用优化浅析(0个评论)
    • mysql中sql_mode的各模式浅析(0个评论)
    • 百度文心一言今天发布,个人第一批内测体验记录,不好别打我(0个评论)
    • 嘿加密世界让我们谈谈在共识中将中本聪主流化(0个评论)
    • 在go语言中寻找两个切片或数组中的相同元素/共同点/交集并集示例代码(0个评论)
    • 近期评论
    • 博主 在

      2023年国务院办公厅春节放假通知:1月21日起休7天中评论 @ xiaoB 你只管努力,剩下的叫给天意;天若有情天亦老,..
    • xiaoB 在

      2023年国务院办公厅春节放假通知:1月21日起休7天中评论 会不会春节放假后又阳一次?..
    • BUG4 在

      你翻墙过吗?国内使用vpn翻墙可能会被网警抓,你需了解的事中评论 不是吧?..
    • 博主 在

      go语言+beego框架中获取get,post请求的所有参数中评论 @ t1  直接在router.go文件中配就ok..
    • Jade 在

      如何在MySQL查询中获得当月记录中评论 Dear zongscan.com team, We can skyroc..
    • 2017-10
    • 2018-01
    • 2020-03
    • 2021-06
    • 2021-10
    • 2022-03
    • 2023-02
    Top

    Copyright·© 2019 侯体宗版权所有· 粤ICP备20027696号 PHP交流群

    侯体宗的博客