91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

微信開發教程(2)

發布時間:2020-03-03 08:59:44 來源:網絡 閱讀:5859 作者:jsny821 欄目:移動開發

簡答的自動回復消息完成了,有很多人都不知道關注自動發送給用戶消息是怎么實現的,那么我今天分享一下關注成功后自動發送消息的實現。

看到微信api里面也有介紹到事件推送,那么這個關注事件是如何使用的呢? 今天不廢話,直接上代碼:

<?php
define("TOKEN", "weixin");
$wechatObj = new wechatCallbackapiTest();
$wechatObj->responseMsg();
class wechatCallbackapiTest {
    public function responseMsg() {
        $postStr = $GLOBALS["HTTP_RAW_POST_DATA"];
        if(!empty($postStr)) {
            $postObj = simplexml_load_string($postStr, 'SimpleXMLElement', LIBXML_NOCDATA);
            $RX_TYPE = trim($postObj->MsgType);
                                   
            switch($RX_TYPE) {
                case "text" :
                    $resultStr = $this->receiveText($postObj);
                    break;
                case "event" :
                    $resultStr = $this->receiveEvent($postObj);
                    break;
                default :
                    $resultStr = "unknow msg type: " . $RX_TYPE;
                    break;
            }
            echo $resultStr;
        } else {
            echo "";
            exit();
        }
    }
    private function receiveText($object) {
        if (!empty($object)){
                $fromUsername = $object->FromUserName;
                $toUsername = $object->ToUserName;
                $keyword = trim($object->Content);
                $time = time();
                                   
                //自動回復圖文消息
                $textTpl = "<xml>
                             <ToUserName><![CDATA[%s]]></ToUserName>
                             <FromUserName><![CDATA[%s]]></FromUserName>
                             <CreateTime>%s</CreateTime>
                             <MsgType><![CDATA[%s]]></MsgType>
                                                    
                             <ArticleCount>3</ArticleCount>
                             <Articles>
                             <item>
                             <Title><![CDATA[測試標題1]]></Title>
                             <Description><![CDATA[測試內容啊1!]]></Description>
                             <PicUrl><![CDATA[https://cache.yisu.com/upload/information/20200302/44/7084.jpg]]></PicUrl>
                             <Url><![CDATA[http://www.baidu.com]]></Url>
                             </item>
                             <item>
                             <Title><![CDATA[哈哈,標題]]></Title>
                             <Description><![CDATA[內容標題]]></Description>
                             <PicUrl><![CDATA[https://cache.yisu.com/upload/information/20200302/44/7085.jpg]]></PicUrl>
                             <Url><![CDATA[http://www.discuz.com]]></Url>
                             </item>
                             <item>
                             <Title><![CDATA[12345哈哈,標題]]></Title>
                             <Description><![CDATA[798465789內容標題]]></Description>
                             <PicUrl><![CDATA[https://cache.yisu.com/upload/information/20200302/44/7084.jpg]]></PicUrl>
                             <Url><![CDATA[http://www.google.com]]></Url>
                             </item>
                             </Articles>
                             <FuncFlag>1</FuncFlag>
                             </xml> ";
                                       
                if(!empty( $keyword )){
                    $msgType = "news";  //類型 news:圖文消息、text:文本消息 event:事件
                    $resultStr = sprintf($textTpl, $fromUsername, $toUsername, $time, $msgType, $contentStr);
                    echo $resultStr;
                }else{
                    echo "Input something...";
                }
        }else {
            echo "";
            exit;
        }
    }
    private function receiveEvent($object) {
        $contentStr = "";
        switch($object->Event) {
            case "subscribe" :
                $contentStr = "歡迎關注社區管家!我們可以常聯系了!!";
                break;
        }
        $resultStr = $this->transmitText($object, $contentStr);
        return $resultStr;
    }
    private function transmitText($object, $content, $flag = 0) {
        $textTpl = "<xml>
                    <ToUserName><![CDATA[%s]]></ToUserName>
                    <FromUserName><![CDATA[%s]]></FromUserName>
                    <CreateTime>%s</CreateTime>
                    <MsgType><![CDATA[text]]></MsgType>
                    <Content><![CDATA[%s]]></Content>
                    <FuncFlag>%d</FuncFlag>
                    </xml>";
        $resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $flag);
        return $resultStr;
    }
}
?>

如果有的童鞋不明白的話,可以留言給我! 我會不定期給大家解決問題!

歡迎留言

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

汝南县| 黄梅县| 冀州市| 吉水县| 新巴尔虎左旗| 泽库县| 太仆寺旗| 东辽县| 崇文区| 岱山县| 明水县| 区。| 渑池县| 阳朔县| 霍林郭勒市| 东城区| 蕉岭县| 宝应县| 兴业县| 义乌市| 东平县| 金秀| 安吉县| 铜山县| 固始县| 古蔺县| 精河县| 喀喇| 南开区| 太保市| 淅川县| 安义县| 孝感市| 文登市| 武川县| 永吉县| 门源| 佛教| 昭觉县| 柘城县| 阜康市|