关注/取消关注事件
用户在关注与取消关注公众号时,微信会把这个事件推送到开发者填写的URL。方便开发者给用户下发欢迎消息或者做帐号的解绑。
微信服务器在五秒内收不到响应会断掉连接,并且重新发起请求,总共重试三次
关于重试的消息排重,推荐使用FromUserName + CreateTime 排重。
假如服务器无法保证在五秒内处理并回复,可以直接回复空串,微信服务器不会对此作任何处理,并且不会发起重试。
推送XML数据包示例:
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[subscribe]]></Event>
</xml>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,subscribe(订阅)、unsubscribe(取消订阅)[/td][/tr]
[/table]使用网页调试工具调试该接口
扫描带参数二维码事件
用户扫描带场景值二维码时,可能推送以下两种事件:
[list=1]
[] 如果用户还未关注公众号,则用户可以关注公众号,关注后微信会将带场景值关注事件推送给开发者。
[] 如果用户已经关注公众号,则微信会将带场景值扫描事件推送给开发者。
[/list]1. 用户未关注时,进行关注后的事件推送
推送XML数据包示例:
<pre><xml><ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[subscribe]]></Event>
<EventKey><![CDATA[qrscene_123123]]></EventKey>
<Ticket><![CDATA[TICKET]]></Ticket>
</xml></pre>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,subscribe[/td][/tr]
[tr][td] EventKey[/td][td] 事件KEY值,qrscene_为前缀,后面为二维码的参数值[/td][/tr]
[tr][td] Ticket[/td][td] 二维码的ticket,可用来换取二维码图片[/td][/tr]
[/table]
2. 用户已关注时的事件推送
推送XML数据包示例:
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[SCAN]]></Event>
<EventKey><![CDATA[SCENE_VALUE]]></EventKey>
<Ticket><![CDATA[TICKET]]></Ticket>
</xml>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,SCAN[/td][/tr]
[tr][td] EventKey[/td][td] 事件KEY值,是一个32位无符号整数,即创建二维码时的二维码scene_id[/td][/tr]
[tr][td] Ticket[/td][td] 二维码的ticket,可用来换取二维码图片[/td][/tr]
[/table]使用网页调试工具调试该接口
上报地理位置事件
用户同意上报地理位置后,每次进入公众号会话时,都会在进入时上报地理位置,或在进入会话后每5秒上报一次地理位置,公众号可以在公众平台网站中修改以上设置。上报地理位置时,微信会将上报地理位置事件推送到开发者填写的URL。
推送XML数据包示例:
<pre><xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[fromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[LOCATION]]></Event>
<Latitude>23.137466</Latitude>
<Longitude>113.352425</Longitude>
<Precision>119.385040</Precision>
</xml></pre>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,LOCATION[/td][/tr]
[tr][td] Latitude[/td][td] 地理位置纬度[/td][/tr]
[tr][td] Longitude[/td][td] 地理位置经度[/td][/tr]
[tr][td] Precision[/td][td] 地理位置精度[/td][/tr]
[/table]使用网页调试工具调试该接口
自定义菜单事件
用户点击自定义菜单后,微信会把点击事件推送给开发者,请注意,点击菜单弹出子菜单,不会产生上报。
点击菜单拉取消息时的事件推送
推送XML数据包示例:
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[CLICK]]></Event>
<EventKey><![CDATA[EVENTKEY]]></EventKey>
</xml>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,CLICK[/td][/tr]
[tr][td] EventKey[/td][td] 事件KEY值,与自定义菜单接口中KEY值对应[/td][/tr]
[/table]
点击菜单跳转链接时的事件推送
推送XML数据包示例:
<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[VIEW]]></Event>
<EventKey><![CDATA[www.qq.com]]></EventKey>
</xml>
参数说明:
[table]
[tr][td]参数[/td][td]描述[/td][/tr]
[tr][td] ToUserName[/td][td] 开发者微信号[/td][/tr]
[tr][td] FromUserName[/td][td] 发送方帐号(一个OpenID)[/td][/tr]
[tr][td] CreateTime[/td][td] 消息创建时间 (整型)[/td][/tr]
[tr][td] MsgType[/td][td] 消息类型,event[/td][/tr]
[tr][td] Event[/td][td] 事件类型,VIEW[/td][/tr]
[tr][td] EventKey[/td][td] 事件KEY值,设置的跳转URL[/td][/tr]
[/table]