【消息管理接口】被动回复用户消息,自动回复

实现功能:
用户给公众号发送消息后,公众号能自动回复消息给用户。

代码示例:
第一步:接受用户发送的消息

require "init.php";
$WXAPI = new WXAPI();
pr($WXAPI->get_msg());

第二步:发送消息给用户

require "init.php";
$WXAPI = new WXAPI();
pr($WXAPI->send_msg());

底层代码:

    /**
     * 对话服务 接收消息 接收普通消息    
     * @author yanxuefa
     * @date2018-01-04
     * @return         [type] [description]
     */
    public function get_msg(){

        $xml = file_get_contents('php://input');
        $xmlObj = $this->xmlToObj($xml);
        if(empty($xmlObj)){
            return '';
        }
        // 处理普通消息
        $this->send_msg($xmlObj);

        // 处理事件消息
        if($xmlObj->MsgType=='event'){
            $this->get_msg_event($xmlObj);
            exit();
        }

        // 处理普通消息
        $this->get_msg_base($xmlObj);
    }

    /**
     * 对话服务 接收消息 被动回复用户消息    
     * @author yanxuefa
     * @date2018-01-04
     * @return         [type] [description]
     */
    private function send_msg($xmlObj){
        $xml  = '<ToUserName><![CDATA['.$xmlObj->FromUserName.']]></ToUserName>';
        $xml .= '<FromUserName><![CDATA['.$xmlObj->ToUserName.']]></FromUserName>';
        $xml .= '<CreateTime>'.$xmlObj->CreateTime.'</CreateTime>';
        $xml .= '<MsgType><![CDATA[text]]></MsgType>';
        $xml .= '<Content><![CDATA['.json_encode($xmlObj).']]></Content>';
        exit('<xml>'.$xml.'</xml>');
    }

 

发表评论

电子邮件地址不会被公开。