接收消息----接收事件推送

目錄

關注/取消關注事件

用戶在關注與取消關注公衆號時,微信會把這個事件推送到開發者填寫的URL。方便開發者給用戶下發歡迎消息或者作賬號的解綁。html

微信服務器在五秒內收不到響應會斷掉鏈接,而且從新發起請求,總共重試三次git

關於重試的消息排重,推薦使用FromUserName + CreateTime 排重。web

假如服務器沒法保證在五秒內處理並回復,能夠直接回復空串,微信服務器不會對此做任何處理,而且不會發起重試。api

推送XML數據包示例:服務器

<xml>
<ToUserName><![CDATA[toUser]]></ToUserName>
<FromUserName><![CDATA[FromUser]]></FromUserName>
<CreateTime>123456789</CreateTime>
<MsgType><![CDATA[event]]></MsgType>
<Event><![CDATA[subscribe]]></Event>
</xml>

參數說明:微信

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)

使用網頁調試工具調試該接口工具

掃描帶參數二維碼事件

用戶掃描帶場景值二維碼時,可能推送如下兩種事件:網站

  1. 若是用戶還未關注公衆號,則用戶能夠關注公衆號,關注後微信會將帶場景值關注事件推送給開發者。
  2. 若是用戶已經關注公衆號,則微信會將帶場景值掃描事件推送給開發者。

1. 用戶未關注時,進行關注後的事件推送spa

推送XML數據包示例:debug

<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>

參數說明:

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,subscribe
EventKey 事件KEY值,qrscene_爲前綴,後面爲二維碼的參數值
Ticket 二維碼的ticket,可用來換取二維碼圖片

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>

參數說明:

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,SCAN
EventKey 事件KEY值,是一個32位無符號整數,即建立二維碼時的二維碼scene_id
Ticket 二維碼的ticket,可用來換取二維碼圖片

使用網頁調試工具調試該接口

上報地理位置事件

用戶贊成上報地理位置後,每次進入公衆號會話時,都會在進入時上報地理位置,或在進入會話後每5秒上報一次地理位置,公衆號能夠在公衆平臺網站中修改以上設置。上報地理位置時,微信會將上報地理位置事件推送到開發者填寫的URL。

推送XML數據包示例:

<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>

參數說明:

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,LOCATION
Latitude 地理位置緯度
Longitude 地理位置經度
Precision 地理位置精度

使用網頁調試工具調試該接口

自定義菜單事件

用戶點擊自定義菜單後,微信會把點擊事件推送給開發者,請注意,點擊菜單彈出子菜單,不會產生上報。

點擊菜單拉取消息時的事件推送

推送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>

參數說明:

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,CLICK
EventKey 事件KEY值,與自定義菜單接口中KEY值對應

 

點擊菜單跳轉連接時的事件推送

推送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>

參數說明:

參數 描述
ToUserName 開發者微信號
FromUserName 發送方賬號(一個OpenID)
CreateTime 消息建立時間 (整型)
MsgType 消息類型,event
Event 事件類型,VIEW
EventKey 事件KEY值,設置的跳轉URL

使用網頁調試工具調試該接口

相關文章
相關標籤/搜索