ACCESSForce.com微信支付系列(5)自定义菜单进阶及语音识别

ACCESS,在上文里我们介绍了何等通过Force.com平台里为微信账号增加自定蓬蒿单,本文里大家将进一步介绍怎样查询菜单以及去除菜单的相干文化,最终会介绍微信平台怎么样进展语音识其他连带本事。

 

询问菜单

与成立菜单类似,查询菜单有温馨的接口,当中ACESS_TOKEN要求经过前文介绍到的接口获取,平时二时辰后会失效:

https://api.weixin.qq.com/cgi-bin/menu/get?access\_token=\[*ACCESS\_TOKEN*\]

为此首先通过前文介绍到的获取Access_Token,获得接近如下的实事求是请求UPRADOL:

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

在IE等浏览器里运维该链接,将相应文件保留下来张开就能够看到微信账号当前的菜单结构(通过不相同浏览器查看也许会现出展现乱码难点等,那是浏览器的暗中同意编码展现难题所致,下载下来通过记事本查看就能够知到相应的实事求是文字):

ACCESS 1

 

剔除菜单

动用接口创造自定蒿子杆单后,开采者还足以选拔接口删除当前接纳的自定蓬花菜单,删除菜单的接口如下:

https://api.weixin.qq.com/cgi-bin/menu/delete?access\_token=\[*ACCESS\_TOKEN*\]

不错开上下班时间的回来JSON数据包如下:

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

 

语音识别

微信公众账号通过微信认证后得以获得语音识别接口,开启语音识别作用以往,用户每一回发送语音给微信账号时,微信会在推送的口音新闻XML数据包中扩大二个Recognition字段,该字段为依云识别出的文书内容。如下是敞开语音识别后的语音XML数据包示例:

 1 <xml>
 2 <ToUserName><![CDATA[toUser]]></ToUserName>
 3 <FromUserName><![CDATA[fromUser]]></FromUserName>
 4 <CreateTime>1357290913</CreateTime>
 5 <MsgType><![CDATA[voice]]></MsgType>
 6 <MediaId><![CDATA[media_id]]></MediaId>
 7 <Format><![CDATA[Format]]></Format>
 8 <Recognition><![CDATA[腾讯微信团队]]></Recognition>
 9 <MsgId>1234567890123456</MsgId>
10 </xml>

 

每一个参数的证实参见下图:

 

前文Force.com微信支付连串(3)申请测试账号及回复图像和文字新闻中已经包蕴了怎么着剖析该节点的值,并且在相应的IncomingMsg类里面也蕴藏了该属性,接下去必要做的是在doPost方法里的论断信息类型部分增加对声音类型新闻的处理代码:

1 else if(msgType.equals('voice')){
2     rtnMsg = handleVoice(inMsg);
3 }

 

此地大家识别音讯类型为voice类型后调用handleVoice方法并传递IncomingMsg对象来拍卖声音,handleVoice方法代码如下:

1 private static String handleVoice(IncomingMsg msg){
2         String result = '您说了: ' + msg.recognition;
3         return composeTextReply(msg, result);
4 }

 

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

ACCESS 2

相关文章