微信平臺開發(fā) 接收事件推送

2019-03-14 11:40 更新

接收事件推送

在微信用戶和公眾號產(chǎn)生交互的過程中,用戶的某些操作會使得微信服務(wù)器通過事件推送的形式通知到開發(fā)者在開發(fā)者中心處設(shè)置的服務(wù)器地址,從而開發(fā)者可以獲取到該信息。其中,某些事件推送在發(fā)生后,是允許開發(fā)者回復(fù)用戶的,某些則不允許,詳細(xì)說明請見本頁末尾的微信推送消息與事件說明。

關(guān)注/取消關(guān)注事件

用戶在關(guān)注與取消關(guān)注公眾號時,微信會把這個事件推送到開發(fā)者填寫的URL。方便開發(fā)者給用戶下發(fā)歡迎消息或者做帳號的解綁。

微信服務(wù)器在五秒內(nèi)收不到響應(yīng)會斷掉連接,并且重新發(fā)起請求,總共重試三次。

關(guān)于重試的消息排重,推薦使用FromUserName + CreateTime 排重。

假如服務(wù)器無法保證在五秒內(nèi)處理并回復(fù),可以直接回復(fù)空串,微信服務(wù)器不會對此作任何處理,并且不會發(fā)起重試。


推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

參數(shù)描述
ToUserName開發(fā)者微信號
FromUserName發(fā)送方帳號(一個OpenID)
CreateTime消息創(chuàng)建時間 (整型)
MsgType消息類型,event
Event事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)

使用網(wǎng)頁調(diào)試工具調(diào)試該接口

掃描帶參數(shù)二維碼事件

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

  1. 如果用戶還未關(guān)注公眾號,則用戶可以關(guān)注公眾號,關(guān)注后微信會將帶場景值關(guān)注事件推送給開發(fā)者。

  2. 如果用戶已經(jīng)關(guān)注公眾號,則微信會將帶場景值掃描事件推送給開發(fā)者。

1. 用戶未關(guān)注時,進行關(guān)注后的事件推送

推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

參數(shù)描述
ToUserName開發(fā)者微信號
FromUserName發(fā)送方帳號(一個OpenID)
CreateTime消息創(chuàng)建時間 (整型)
MsgType消息類型,event
Event事件類型,subscribe
EventKey事件KEY值,qrscene_為前綴,后面為二維碼的參數(shù)值
Ticket二維碼的ticket,可用來換取二維碼圖片

2. 用戶已關(guān)注時的事件推送

推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

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

使用網(wǎng)頁調(diào)試工具調(diào)試該接口

上報地理位置事件

用戶同意上報地理位置后,每次進入公眾號會話時,都會在進入時上報地理位置,或在進入會話后每5秒上報一次地理位置,公眾號可以在公眾平臺網(wǎng)站中修改以上設(shè)置。上報地理位置時,微信會將上報地理位置事件推送到開發(fā)者填寫的URL。

推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

參數(shù)描述
ToUserName開發(fā)者微信號
FromUserName發(fā)送方帳號(一個OpenID)
CreateTime消息創(chuàng)建時間 (整型)
MsgType消息類型,event
Event事件類型,LOCATION
Latitude地理位置緯度
Longitude地理位置經(jīng)度
Precision地理位置精度

使用網(wǎng)頁調(diào)試工具調(diào)試該接口

自定義菜單事件

用戶點擊自定義菜單后,微信會把點擊事件推送給開發(fā)者,請注意,點擊菜單彈出子菜單,不會產(chǎn)生上報。

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

推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

參數(shù)描述
ToUserName開發(fā)者微信號
FromUserName發(fā)送方帳號(一個OpenID)
CreateTime消息創(chuàng)建時間 (整型)
MsgType消息類型,event
Event事件類型,CLICK
EventKey事件KEY值,與自定義菜單接口中KEY值對應(yīng)


點擊菜單跳轉(zhuǎn)鏈接時的事件推送

推送XML數(shù)據(jù)包示例:

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

參數(shù)說明:

參數(shù)描述
ToUserName開發(fā)者微信號
FromUserName發(fā)送方帳號(一個OpenID)
CreateTime消息創(chuàng)建時間 (整型)
MsgType消息類型,event
Event事件類型,VIEW
EventKey事件KEY值,設(shè)置的跳轉(zhuǎn)URL

使用網(wǎng)頁調(diào)試工具調(diào)試該接口

消息調(diào)試接口

以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號