基于PHP微信公众号语音识别功能开发

首先我们要确定我们接收到的是用户的语音信息,在微信公众号中消息分为以下几类

被关注:subscribe
取消关注:unsubscribe
文本:text
图片:image
语音:voice
视频:video
小视频:shortvideo
地理位置:location
连接消息:link
在这里插入图片描述
要确保这里的接受语音识别结果接口是开启的,微信公众号默认是开启的,但是还是要去确认一遍,如果关闭了再次打开就好了

而我们需要的是语音消息也就是voice,所以这时候在代码中就应该是
//

            $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
            $RX_TYPE = trim($postObj->MsgType);
            if($RX_TYPE=='voice')
            {
                   $fromUsername = $postObj->FromUserName;
                   $toUsername = $postObj->ToUserName;
                   $keyword = trim($postObj->Recognition);//这里就是微信自带的语音识别返回的识别到的文本,然后格式化输出到公众号就ok了
                   $time = time();
                   $msgType = "text";
                   $contentStr = "你发送的是语音\n内容为:\n"."$keyword";
                   $textTpl = "<xml>
                                     <ToUserName><![CDATA[%s]]></ToUserName>
                                     <FromUserName><![CDATA[%s]]></FromUserName>
                                     <CreateTime>%s</CreateTime>
                                     <MsgType><![CDATA[%s]]></MsgType>
                                     <Content><![CDATA[%s]]></Content>
                                     <FuncFlag>0</FuncFlag>
                                     </xml>";
                $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                echo $resultStr;
            } 
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值