PHP微信开发之模板消息回复

微信公众平台上,有个模板消息回复接口:可以用来实现回复特定的消息-----比如用户下了订单之后,回复给用户您的订单正在处理中...比如下面这张图:

用户进行了一些操作之后,服务号能够返回特定的消息----这就是模板消息。

要实现模板消息的回复,你的公众号必须是经过微信认证的,如果是个人的订阅号,暂时不支持微信认证。不过也不影响做测试-----你可以使用测试公众号:

使用测试号的时候,接口信息的配置就不讲了,可以参考我之前的博客。

使用维码登录测试号之后,需要用你的微信号去关注这个测试号,不然看不到模板消息的回复。

我在做测试的时候,用了chrome浏览器的一个插件:postman。该插件可以指定发送GET,POST等各种HTTP请求,功能强大,在测试接口时很有用。

1、发送GET请求获取测试号的access_token:https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=你的测试号appID&secret=你的测试号appsecret

2、设置所属行业:

发送一个POST请求,并带上参数:

请求:https://api.weixin.qq.com/cgi-bin/template/api_set_industry?access_token=你刚才得到的access_token

参数:

 {
     "industry_id1":"1",
     "industry_id2":"2"
    }

参数里的1和2表示所属的行业,具体的行业可以参考文档:http://mp.weixin.qq.com/wiki/12/bd383158b0f8435c07b8b6bc7cdbac9c.html

具体发送post请求大家可以使用curl发送,应该不难。我使用postman来发送。发送完成之后返回成功的json消息,然后就可以进行下一步

3、获得模板ID:这一块你可以自定义,也可以使用微信内置的一些。

比如使用自定义的模板ID:在你的测试号里有个“新增测试模板”

提交之后,就可以看到自己模板ID出现了:

然后另一种生成模板ID的方法是发送post请求(可以curl发送或者用postman发送)

请求:https://api.weixin.qq.com/cgi-bin/template/api_add_template?access_token=ACCESS_TOKEN

参数:

 {
      "template_id_short":"TM00015"
    }

其中的TM00015是微信内置的模板的ID,你可以在https://mp.weixin.qq.com的图形化界面里找到(须微信认证)

4、获得模板ID之后,刷新你的测试号页面,可以看到出现了:

5、用你得到的template_id_short,再发送一个post请求就可以得到一个msgid:

请求:https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=你的access_token

发送的数据:

 {
      "touser":"测试号的关注者的openId",
      "template_id":"你刚才得到的模板ID",
      "url":"关注者点击你的模板消息时跳转的链接",
      "data":{
          "first": {
            "value":"恭喜你购买成功!",
            "color":"#173177"
          },
          "orderMoneySum":{
            "value":"666",
            "color":"#173177"
          },
          "orderProductName": {
            "value":"男士正装",
            "color":"#173177"
          },
          "Remark":{
            "value":"欢迎再次购买!",
            "color":"#173177"
          }
      }
    }

color表示你的模板里字段的颜色

官方的文档里没有对上面的参数作说明,我在上面用中文写出了每个字段的意思,其中需要注意的是,touser不是关注者在微信客户端的“微信号”,而是如下图里的微信号

把参数用post方式发送之后,就会得到一个msgid:

得到这个成功响应的时候,同时,你的测试公众号应该也返回了一个模板消息给你(关注者)

本文只是介绍怎样做出一个模板消息,如果想用到项目里,还请自行翻阅微信开发者文档,结合微支付,事件推送等高级功能一起来做。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我们。

(0)

相关推荐

  • PHP实现微信模拟登陆并给用户发送消息的方法【文字,图片,图文】

    本文实例讲述了PHP实现微信模拟登陆并给用户发送消息的方法.分享给大家供大家参考,具体如下: <?php /* 原作者:https://github.com/itziy/wechat 修改:Server getUserFakeid函数 获取fakeid的正则匹配公式 调用方式简单说明: $arr = array( 'account' => '公众平台帐号', 'password' => '密码' ); $w = new Weixin($arr); $w->getAllUserInf

  • 微信公众号开发之文本消息自动回复php代码

    本文实例为大家分享了php微信文本消息自动回复 别代码,供大家参考,具体内容如下 1.PHP示例代码下载  下载地址1:http://xiazai.jb51.net/201608/yuanma/phpwx(jb51.net).rar  下载地址2:https://mp.weixin.qq.com/wiki/home/index.html(开始开发->接入指南->PHP示例代码下载) 2.wx_sample.php初始代码 <?php /** * wechat php test */ //

  • PHP快速推送微信模板消息

    需要给关注用户发送模板消息,由于公众号关注用户比较多,所以采用普通的curl等方式太慢.由于模板消息发送不需要等待微信的结果,所以利用php的fsockopen()函数可以达到快速发送的效果.代码如下: $data = [ 'touser' => '11111111111111111', 'template_id' => '111111111111111111', 'url' => '11111111111111111111', 'data' => [ 'first' =>

  • 基于php的微信公众平台开发入门实例

    本文实例讲述了基于php的微信公众平台开发方法.分享给大家供大家参考.具体如下: 最近在做微信公众平台开发,一口气写了二十几个功能,挺有意思的- 今天来分享一下开发经验~ 微信公众平台提供的接口很简单,先看看消息交互流程: 说的通俗一些,用户使用微信发送消息 -> 微信将数据发送给开发者 -> 开发者处理消息并返回数据至微信 -> 微信把返回数据发送给用户,期间数据交互通过XML完成,就这么简单.   下面写个实例,开发微信智能聊天机器人:   1. 注册微信公众平台账号 微信公众平台:

  • PHP微信模板消息操作示例

    本文实例讲述了PHP微信模板消息操作方法.分享给大家供大家参考,具体如下: 微信SDK: <?php class Oauth { //获得全局access_token public function get_token(){ //如果已经存在直接返回access_token //if($_SESSION['access_token'] && $_SESSION['expire_time']>time()){ //return $_SESSION['access_token'];

  • 微信公众号模板消息群发php代码示例

    微信模板消息只能发给一个人,如果要群发,需要通过php循环,依次发送. 注意,如果模板消息发信息时有时无,不稳定,可能你的access_token令牌更新缓存不及时,过期了.可以根据日志文件查看.建议300秒更新一下.否则会很烦. 模板id需要自己去公众号中设置行业后得到. <?php //使用方法.直接在页面的逻辑中增加fahuo_wechat();即可.函数要事先引用. function fahuo_wechat($shopid){ if(_cfg("sendmobile")

  • php实现微信模拟登陆、获取用户列表及群发消息功能示例

    本文实例讲述了php实现微信模拟登陆.获取用户列表及群发消息功能.分享给大家供大家参考,具体如下: <?php header('Content-Type: text/html; charset=UTF-8'); /* 调用方式简单说明: $arr = array( 'account' => '公众平台帐号', 'password' => '密码' ); $w = new Weixin($arr); print_r($w->getAllUserInfo());//获取所有用户信息 $

  • php实现发送微信模板消息的方法

    本文实例讲述了php实现发送微信模板消息的方法.分享给大家供大家参考.具体如下: 该方法基于thinkphp实现实现,具体OrderPush.class.php文件如下: 复制代码 代码如下: <?php namespace Org\Weixin; /**  * Created by PhpStorm.  * User: StandOpen  * Date: 15-1-7  * Time: 9:41  */ class OrderPush {     protected $appid;    

  • thinkphp微信开发(消息加密解密)

    使用thinkphp官方的WeChat包,使用不同模式可以成功,但是安全模式就是不行,现将分析解决结果做下记录. 分析问题: 解密微信服务器消息老是不成功,下载下微信公众平台官方给出的解密文件和WechatCrypt.class.php进行比对发现也没有问题.用file_put_contents函数保存下解密后的文件进行分析.发现官方包解密的xml不是标准的xml格式,所以simplexml_load_string函数无法处理. /** * 对密文进行解密 * @param string $en

  • php实现微信公众号主动推送消息

    通过学习借鉴朋友的实现方法进行整理,实现了PHP版的微信公共平台消息主动推送,分享给大家供大家参考,具体内容如下 此方法是通过模拟登录微信公共平台的方法来实现的. 代码如下: 一.登录接口部分代码 //登录 private function login(){ $url = 'https://mp.weixin.qq.com/cgi-bin/login?lang=zh_CN'; $this->send_data = array( 'username' => $this->_account,

  • PHP对接微信公众平台消息接口开发流程教程

    一.写好接口程序 在你的服务器上上传好一个接口程序文件,如http://www.yourdomain.com/weixin.php  内容如下: 复制代码 代码如下: <?phpdefine("TOKEN", "weixin");//自己定义的token 就是个通信的私钥$wechatObj = new wechatCallbackapiTest();$wechatObj->valid();//$wechatObj->responseMsg();c

随机推荐