给用户发送被动响应或是客服的语音消息时,假设直接将用户发给公众号的语音消息返回给用户。
1. 服务端收到消息
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>1357290913</CreateTime>
<MsgType><![CDATA[voice]]></MsgType>
<MediaId><![CDATA[ivSRpSmP-o_E2VxJ875cjH_ctPqlN4eciXVMHQyft2Tgs1xow5znwezUxU6wX2nN]]></MediaId>
<Format><![CDATA[Format]]></Format>
<MsgId>1234567890123456</MsgId>
</xml>
2. 通过被动响应直接回复
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>12345678</CreateTime>
<MsgType><![CDATA[voice]]></MsgType>
<Voice>
<MediaId><![CDATA[ivSRpSmP-o_E2VxJ875cjH_ctPqlN4eciXVMHQyft2Tgs1xow5znwezUxU6wX2nN]]></MediaId>
</Voice>
</xml>
结果:用户都能收到消息,iPhone版微信可以正常播放,Android版微信无法播放声音,但是可以用「转换为文字」功能。
https://www.v2ex.com/p/6aDPtIPz