微信公衆平台 微信公衆平台開發模式 消息接口 企業微信公衆平台 Hello2BizUser subscribe 訂閱事件
微信公衆平台由于接口更新,将産生以下變更。新使用者訂閱,将由之前推送一條“Hello2BizUser”文本,變化為推送一條“subscribe”的事件。最近碰到好幾個朋友詢問新使用者訂閱事件後代碼要怎麼改,現在将詳細過程講解如下:
一、Hello2BizUser舊事件的處理
在老的關注事件中,使用者關注微信公衆平台賬号後,系統會幫使用者發送一條Hello2BizUser的文本給公衆賬号,公衆賬号背景開發模式下通過判斷Hello2BizUser這個詞來實作發送歡迎詞。
代碼樣例如下:
做出基礎接口上的修改,影響會是所有人。一般不會輕易做這樣的改動。
為什麼微信要修改這一事件了,這個方法的弊端在于,如果使用者沒有判斷這一事件,那麼就不會有歡迎詞,本來這也沒什麼關系,不出現歡迎詞也不影響什麼。但很多人的程式代碼裡面,所有流程直接就是判斷關鍵詞。比如我們曾看到過一家醫院的微信賬号,使用者發送挂号的号碼,就顯示前面有多少人排列,但背景程式沒有做區分,把Hello2BizUser也當成挂号單發送過去,傳回沒有找到Hello2BizUser這一挂号,不知道前面有多少人,搞得使用者莫名奇妙。還有就是使用者如果主動發送一個Hello2BizUser過去,那麼得到的也是和歡迎詞一樣的内容,雖然很少有使用者會去發這個東西。
另一方面,将使用者關注做成事件,更有利于統計功能的實作。利用這個事件,我們就更能容易的判斷出關注人數和退訂人數,而原來的Hello2BizUser文本推送判斷是有可能不準确的,因為使用者可以手工發送,形成虛假關注統計。
二、“subscribe”訂閱事件判斷
subscribe是一種新的事件,我們先需要做事件類型做判斷,我們在官方樣例中增加對這一事件的判斷,修改如下:
然後在事件接收處理函數中再判斷訂閱事件 :
這樣就完成了“subscribe”的訂閱事件下的處理。
二、完整代碼
