微信自动回复图片 api标准接口的 php代码

微信自动回复图片 api标准接口的 php代码

实现的功能:客户在公众号上回复关键字,公众号自动回复一张图片

在微信开发的页面上,设置好触发的关键词,及触发后跳转到指定的接口地址,如http://www.aaa.com/picture.php

然后在网站服务器上创建picture.php文件,文件代码如下:

<?php
$wechatObj = new wechat();
$wechatObj->responseMsg();
class wechat {
        public function responseMsg() {

                //---------- 接 收 数 据 ---------- //

                $postStr = $GLOBALS["HTTP_RAW_POST_DATA"]; //获取POST数据

                //用SimpleXML解析POST过来的XML数据
                $postObj = simplexml_load_string($postStr,'SimpleXMLElement',LIBXML_NOCDATA);

                $fromUsername = $postObj->FromUserName; //获取发送方帐号(OpenID)
                $toUsername = $postObj->ToUserName; //获取接收方账号
                $keyword = trim($postObj->Content); //获取消息内容
                $time = time(); //获取当前时间戳


                //---------- 返 回 数 据 ---------- //

                //返回消息模板
                $textTpl = "<xml>
                <ToUserName><![CDATA[%s]]></ToUserName>
                <FromUserName><![CDATA[%s]]></FromUserName>
                <CreateTime>%s</CreateTime>
                <MsgType><![CDATA[%s]]></MsgType>
                <Image>
                <MediaId><![CDATA[%s]]></MediaId>
                </Image>
                <FuncFlag>0</FuncFlag>
                </xml>";

                $msgType = "image"; //消息类型
                $contentStr = '填写你上传图片的MediaID'; //返回消息内容

                //格式化消息模板
                $resultStr = sprintf($textTpl,$fromUsername,$toUsername,$time,$msgType,$contentStr);
                echo $resultStr; //输出结果
        }
}
?>

这样,在微信服务号上输入对应的关键字,服务号上就会返回对应的图片。

MediaID的获取方法:
登陆微信公众平台->开发者工具->在线接口调试工具
接口类型选:基础支持
先获取access_token
access_token每次登陆都会变更

获取access_token后,接口列表选择多媒体文件上传接口
填入access_token,type选择image,media选择要回复的图片,图片上传成功后,就会返回一个MediaID,把它填入上面的代码中就可以了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章