公眾平台訊息介面為開發人員提供了一種新的訊息處理方式。
申請訊息介面
點擊申請,填寫網址url和token,其中token可由開發人員可以任意填寫,用作產生簽名。
網址接入
公眾平台使用者提交資訊後,伺服器將發送GET請求到填寫的URL上,並且帶上四個參數:
| 參數 |
描述 |
| signature |
加密簽名 |
| timestamp |
時間戳記 |
| nonce |
隨機數 |
| echostr |
隨機字串 |
開發人員通過檢驗signature對請求進行校正(下面有校正方式)。若確認此次GET請求來自伺服器,請原樣返回echostr參數內容,則接入生效,否則接入失敗。
signature結合了開發人員填寫的token參數和請求中的timestamp參數、nonce參數。
加密/校正流程:1. 將token、timestamp、nonce三個參數進行字典序排序2. 將三個參數字串拼接成一個字串進行sha1加密3. 開發人員獲得加密後的字串可與signature對比,標識該請求來源於
訊息推送
當普通使用者向公眾帳號發訊息時,伺服器將POST該訊息到填寫的URL上。結構如下:
簡訊
toUser fromUser 1348831860 text this is a test 1234567890123456
| 參數 |
描述 |
| ToUserName |
開發人員號 |
| FromUserName |
發送方帳號(一個OpenID) |
| CreateTime |
訊息建立時間 (整型) |
| MsgType |
text |
| Content |
簡訊內容 |
| MsgId |
訊息id,64位整型 |
圖片訊息
toUser fromUser 1348831860 image this is a url 1234567890123456
| 參數 |
描述 |
| ToUserName |
開發人員號 |
| FromUserName |
發送方帳號(一個OpenID) |
| CreateTime |
訊息建立時間 (整型) |
| MsgType |
image |
| PicUrl |
圖片連結 |
| MsgId |
訊息id,64位整型 |
地理位置訊息
toUserfromUser1351776360location23.134521113.35880320位置資訊1234567890123456
| 參數 |
描述 |
| ToUserName |
開發人員號 |
| FromUserName |
發送方帳號(一個OpenID) |
| CreateTime |
訊息建立時間 (整型) |
| MsgType |
location |
| Location_X |
地理位置緯度 |
| Location_Y |
地理位置經度 |
| Scale |
地圖縮放大小 |
| Label |
地理位置資訊 |
| MsgId |
訊息id,64位整型 |
連結訊息
toUserfromUser1351776360link<![CDATA[公眾平台官網連結]]>公眾平台官網連結url1234567890123456
| 參數 |
描述 |
| ToUserName |
接收方號 |
| FromUserName |
發送方號,若為普通使用者,則是一個OpenID |
| CreateTime |
訊息建立時間 |
| MsgType |
訊息類型,link |
| Title |
訊息標題 |
| Description |
訊息描述 |
| Url |
訊息連結 |
| MsgId |
訊息id,64位整型 |
事件推送
事件推送只支援4.5版本,目前開啟自訂菜單介面事件推送、關注與取消追蹤事件推送。其餘功能即將開放,敬請期待。
toUserFromUser123456789eventEVENTEVENTKEY
| 參數 |
描述 |
| ToUserName |
接收方號 |
| FromUserName |
發送方號,若為普通使用者,則是一個OpenID |
| CreateTime |
訊息建立時間 |
| MsgType |
訊息類型,event |
| Event |
事件類型,subscribe(訂閱)、unsubscribe(取消訂閱)、CLICK(自訂菜單點擊事件) |
| EventKey |
事件KEY值,與自訂菜單介面中KEY值對應 |
訊息回複
對於每一個POST請求,開發人員在響應包中返回特定xml結構,對該訊息進行響應(現支援回複文本、圖文、語音、視頻、音樂)。
伺服器在五秒內收不到響應會斷掉串連。
回複xml結構如下:
回複簡訊
toUser fromUser 12345678 text content
| 參數 |
描述 |
| ToUserName |
接收方帳號(收到的OpenID) |
| FromUserName |
開發人員號 |
| CreateTime |
訊息建立時間 |
| MsgType |
text |
| Content |
回複的訊息內容,長度不超過2048位元組 |
回複音樂訊息
toUser fromUser 12345678 music <![CDATA[TITLE]]> DESCRIPTION MUSIC_Url HQ_MUSIC_Url
| 參數 |
描述 |
| ToUserName |
接收方帳號(收到的OpenID) |
| FromUserName |
開發人員號 |
| CreateTime |
訊息建立時間 |
| MsgType |
music |
| MusicUrl |
音樂連結 |
| HQMusicUrl |
高品質音樂連結,WIFI環境優先使用該連結播放音樂 |
回複圖文訊息
toUser fromUser 12345678 news 2 <![CDATA[title1]]> description1 picurl url <![CDATA[title]]> description picurl url
| 參數 |
描述 |
| ToUserName |
接收方帳號(收到的OpenID) |
| FromUserName |
開發人員號 |
| CreateTime |
訊息建立時間 |
| MsgType |
news |
| ArticleCount |
圖文訊息個數,限制為10條以內 |
| Articles |
多條圖文訊息資訊,預設第一個item為大圖 |
| Title |
圖文訊息標題 |
| Description |
圖文訊息描述 |
| PicUrl |
圖片連結,支援JPG、PNG格式,較好的效果為大圖640*320,小圖80*80。 |
| Url |
點擊圖文訊息跳轉連結 |
注意事項
1.使用者OpenID對一個公眾號是固定唯一的串
2.請使用80連接埠
範例程式碼
PHP:下載
http://www.bkjia.com/PHPjc/445642.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/445642.htmlTechArticle公眾平台訊息介面為開發人員提供了一種新的訊息處理方式。 申請訊息介面 點擊申請,填寫網址url和token,其中token可由開發人員可以任意填寫...