微信开发教程(2)

简答的自动回复消息完成了,有很多人都不知道关注自动发送给用户消息是怎么实现的,那么我今天分享一下关注成功后自动发送消息的实现。

为旌德等地区用户提供了全套网页设计制作服务,及旌德网站建设行业解决方案。主营业务为成都网站设计、网站建设、外贸网站建设、旌德网站设计,以传统方式定制建设网站,并提供域名空间备案等一条龙服务,秉承以专业、用心的态度为用户提供真诚的服务。我们深信只要达到每一位用户的要求,就会得到认可,从而选择与我们长期合作。这样,我们也可以走得更远!

看到微信api里面也有介绍到事件推送,那么这个关注事件是如何使用的呢? 今天不废话,直接上代码:

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 = "
                             
                             
                             %s
                             
                                                    
                             3
                             
                             
                             <![CDATA[测试标题1]]>
                             
                             
                             
                             
                             
                             <![CDATA[哈哈,标题]]>
                             
                             
                             
                             
                             
                             <![CDATA[12345哈哈,标题]]>
                             
                             
                             
                             
                             
                             1
                              ";
                                       
                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 = "
                    
                    
                    %s
                    
                    
                    %d
                    ";
        $resultStr = sprintf($textTpl, $object->FromUserName, $object->ToUserName, time(), $content, $flag);
        return $resultStr;
    }
}
?>

如果有的童鞋不明白的话,可以留言给我! 我会不定期给大家解决问题!

欢迎留言


文章标题:微信开发教程(2)
文章源于:http://pwwzsj.com/article/gchcso.html