Force.com微信开发系列自定义菜单进阶及语音识别

高洛峰
发布: 2017-02-25 16:46:15
原创
1730人浏览过

在上文里我们介绍了如何通过force.com平台里为微信账号添加自定义菜单,本文里我们将进一步介绍如何查询菜单以及删除菜单的相关知识,最后会介绍微信平台如何进行语音识别的相关技术。 

查询菜单

与创建菜单类似,查询菜单有自己的接口,其中ACESS_TOKEN需要通过前文介绍到的接口获取,通常2小时后会失效:

https://api.weixin.qq.com/cgi-bin/menu/get?access_token=[ACCESS_TOKEN]

为此首先通过前文介绍到的获取Access_Token,获得类似如下的真实请求URL:

https://api.weixin.qq.com/cgi-bin/menu/get?access_token=RKkFQMHmXuTWPoCzEB9lYY_bksaBzxqKqE5FG0nW_74YXREheG3IyIoz9YvebQLI_6Vq9mD_rVD1iSXC1JzaBg

在IE等浏览器里运行该链接,将相应文件保存下来打开即可看到微信账号当前的菜单结构(通过不同浏览器查看可能会出现显示乱码问题等,这是浏览器的默认编码显示问题所致,下载下来通过记事本查看即可看到对应的真实文字):

Force.com微信开发系列自定义菜单进阶及语音识别

删除菜单

使用接口创建自定义菜单后,开发者还可以使用接口删除当前使用的自定义菜单,删除菜单的接口如下:

https://api.weixin.qq.com/cgi-bin/menu/delete?access_token=[ACCESS_TOKEN]

正确时的返回JSON数据包如下:

{“errcode”:0, “errmsg”:”ok”}

 

语音识别

微信公众账号通过微信认证后可以获得语音识别接口,开启语音识别功能以后,用户每次发送语音给微信账号时,微信会在推送的语音消息XML数据包中增加一个Recognition字段,该字段为依云识别出的文本内容。如下是开启语音识别后的语音XML数据包示例:

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1357290913</CreateTime>
<MsgType><![CDATA[voice]]></MsgType>
<MediaId><![CDATA[media_id]]></MediaId>
<Format><![CDATA[Format]]></Format>
<Recognition><![CDATA[腾讯微信团队]]></Recognition>
<MsgId>1234567890123456</MsgId>
</xml>
登录后复制

每个参数的说明参见下图:

Force.com微信开发系列自定义菜单进阶及语音识别

前文Force.com微信开发系列(三)申请测试账号及回复图文消息中已经包含了如何解析该节点的值,并且在相应的IncomingMsg类里面也包含了该属性,接下来需要做的是在doPost方法里的判断消息类型部分添加对声音类型消息的处理代码:

else if(msgType.equals('voice')){
     rtnMsg = handleVoice(inMsg);
 }
登录后复制

这里我们识别消息类型为voice类型后调用handleVoice方法并传递IncomingMsg对象来处理声音,handleVoice方法代码如下:

 private static String handleVoice(IncomingMsg msg){
         String result = '您说了: ' + msg.recognition;
         return composeTextReply(msg, result);
 }
登录后复制

代码读取了腾讯平台识别后传递过来的XML问中Recognition节点的内容并返回给用户,保存代码后尝试发送语音给微信测试账号,运行效果如下:

Force.com微信开发系列自定义菜单进阶及语音识别

更多Force.com微信开发系列自定义菜单进阶及语音识别相关文章请关注PHP中文网!

微信app下载
微信app下载

微信是一款手机通信软件,支持通过手机网络发送语音短信、视频、图片和文字。微信可以单聊及群聊,还能根据地理位置找到附近的人,带给大家全新的移动沟通体验,有需要的小伙伴快来保存下载体验吧!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号