公众号自定义图文消息推送(2)
生活随笔
收集整理的這篇文章主要介紹了
公众号自定义图文消息推送(2)
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
為什么80%的碼農(nóng)都做不了架構(gòu)師?>>> ??
這部分調(diào)試了很久,因?yàn)樵谛掠脩魭呙枇撕糜逊窒淼亩S碼之后需要分發(fā)兩條消息,一條是自動(dòng)推送給當(dāng)前用戶歡迎的消息,另一條是推送給二維碼主人的消息。調(diào)試了很久都不能同時(shí)分發(fā)(也許是我的邏輯或者方法有問題吧【尷尬臉】)。后來去谷歌了一下,好像不能分發(fā)兩條或者多條消息,只能分發(fā)一條消息,所以這部分需要用到客服消息接口。
不多說,先看代碼
注意:在啟用了服務(wù)器配置過后,原有的自定義菜單功能等將不能使用了,所以得編寫菜單功能,
參考文檔(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421141013)
3.消息推送方法responseMsg,
private function responseMsg(){$postStr = $GLOBALS["HTTP_RAW_POST_DATA"];if (!empty($postStr)){$postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);$TYPE = trim($postObj->MsgType);$EventKey = trim((string)$postObj->EventKey);$keyArray = explode("_", $EventKey);if (count($keyArray) && count($keyArray) != 1) {//掃好友分享的二維碼關(guān)注,未關(guān)注者關(guān)注后推送事件$getContent = $this->getAndSaveUserInfo($postObj, $keyArray[1]);//拿到用戶的openId和userId,再拿到用戶的詳細(xì)信息,并將個(gè)人微信信息保存至數(shù)據(jù)庫}switch ($TYPE){case "text":$resultStr = $this->receiveText($postObj);break;case "event":if($postObj->EventKey == 'V1001_wap_create_1'){//點(diǎn)擊生成二維碼圖片$resultStr = $this->receiveText($postObj);}else{$resultStr = $this->receiveEvent($postObj);}if($getContent){//是否新關(guān)注者,并調(diào)用客服接口給二維碼主人發(fā)送消息$this->replyCustomer($getContent['openId'], $getContent['content']);}break;default:$resultStr = "";break;}echo $resultStr;}else {echo "";exit;}}4.在方法receiveText和receiveEvent中主要是組裝xml數(shù)據(jù),主要請參考文檔(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140453)
方法replyCustomer主要是給二維碼主人或者其他人發(fā)消息,參考文檔(https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140547)
這是這個(gè)方法發(fā)的消息
轉(zhuǎn)載于:https://my.oschina.net/Shinsg/blog/1053937
總結(jié)
以上是生活随笔為你收集整理的公众号自定义图文消息推送(2)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: GEF调色板中的多级树结构
- 下一篇: Android NDK JNI 的简单使