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


Posted in PHP onJune 24, 2016

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

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

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

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

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

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

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

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

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

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

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

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

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

然后另一种生成模板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之后,刷新你的测试号页面,可以看到出现了:

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

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不是关注者在微信客户端的“微信号”,而是如下图里的微信号

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

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

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

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

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

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

PHP 相关文章推荐
php读取xml实例代码
Jan 28 PHP
PHP中使用gettext来支持多语言的方法
May 02 PHP
PHP中判断变量为空的几种方法分享
Aug 26 PHP
PHP批量上传图片的具体实现方法介绍.
Feb 26 PHP
PHP微框架Dispatch简介
Jun 12 PHP
简单的php+mysql聊天室实现方法(附源码)
Jan 05 PHP
PHP多维数组元素操作类的方法
Nov 14 PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 PHP
Yii 2中的load()和save()示例详解
Aug 03 PHP
PHP中散列密码的安全性分析
Jul 26 PHP
thinkPHP5框架接口写法简单示例
Aug 05 PHP
YII2框架中behavior行为的理解与使用方法示例
Mar 13 PHP
PHP微信开发之根据用户回复关键词\位置返回附近信息
Jun 24 #PHP
简单解析PHP程序的运行流程
Jun 23 #PHP
PHP微信开发之查询微信精选文章
Jun 23 #PHP
PHP微信开发之查询城市天气
Jun 23 #PHP
PHP微信开发之有道翻译
Jun 23 #PHP
PHP微信开发之文本自动回复
Jun 23 #PHP
php微信高级接口群发 多客服
Jun 23 #PHP
You might like
PHP实现HTML页面静态化的方法
2015/11/04 PHP
Composer设置忽略版本匹配的方法
2016/04/27 PHP
php实现的错误处理封装类实例
2017/06/20 PHP
php curl获取到json对象并转成数组array的方法
2018/05/31 PHP
代码生成器 document.write()
2007/04/15 Javascript
使用jQuery模板来展现json数据的代码
2010/10/22 Javascript
html中的input标签的checked属性jquery判断代码
2012/09/19 Javascript
js下拉菜单语言选项简单实现
2013/09/23 Javascript
浏览器窗口大小变化时使用resize事件对框架不起作用的解决方法
2014/05/11 Javascript
JavaScript中对象属性的添加和删除示例
2014/05/12 Javascript
gridview生成时如何去掉style属性中的border-collapse
2014/09/30 Javascript
纯js实现手风琴效果代码
2020/04/17 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
jQuery实现鼠标跟随效果
2017/02/20 Javascript
深入理解 JavaScript 中的 JSON
2017/04/06 Javascript
微信小程序实战之自定义模态弹窗(8)
2017/04/18 Javascript
基于Vue2x实现响应式自适应轮播组件插件VueSliderShow功能
2018/05/16 Javascript
创建Vue项目以及引入Iview的方法示例
2018/12/03 Javascript
用Fundebug插件记录网络请求异常的方法
2019/02/21 Javascript
全面解析Vue中的$nextTick
2020/12/24 Vue.js
详解vue3中组件的非兼容变更
2021/03/03 Vue.js
[01:27]2014DOTA2展望TI 剑指西雅图IG战队专访
2014/06/30 DOTA
python不带重复的全排列代码
2013/08/13 Python
用Python实现一个简单的多线程TCP服务器的教程
2015/05/05 Python
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
Python实现基于多线程、多用户的FTP服务器与客户端功能完整实例
2017/08/18 Python
python无限生成不重复(字母,数字,字符)组合的方法
2018/12/04 Python
elasticsearch python 查询的两种方法
2019/08/04 Python
CSS3实现超酷的黑猫警长首页
2016/04/26 HTML / CSS
html5实现输入框fixed定位在屏幕最底部兼容性
2020/07/03 HTML / CSS
得到Class的三个过程是什么
2012/08/10 面试题
《蝙蝠和雷达》教学反思
2014/04/23 职场文书
校本课程教学计划
2015/01/19 职场文书
Python如何把不同类型数据的json序列化
2021/04/30 Python
Promise面试题详解之控制并发
2021/05/14 面试题
讲解MySQL增删改操作
2022/05/06 MySQL