微信公众号如何无限制的定向推送消息–模板消息的应用
最近开发的OA平台有一个需求:将待办消息推送到微信公众号的指定用户。但是为了避免用户受到垃圾消息的骚扰,微信对相关的接口做了非常严格的限制。
查阅开发文档,公众号主动推送消息有三种接口:
- 群发消息
- 客服消息
- 模板消息
群发消息
存在条数限制,不适合推送待办消息;
客服消息
虽然没有条数限制,但是确需要48小时内用户主动发送过消息,这也无法满足要求。
模板消息
而唯一能符合推送待办消息要求的只剩下模板消息这一种。
其实大家对模板消息并不陌生。
那么如何实现模板消息的推送呢!
首先 申请:微信公众平台–>功能–>添加功能插件–>模板消息,选择行业,填写申请理由,等待审核通过
第二步 选择适合的模板,获取模板ID
第三步 后台逻辑实现
查看开发文档,具体分两步
ONE:获取模板ID
刚刚已经获取
TWO:请求接口
POST请求 https://api.weixin.qq.com/cgi-bin/message/template/send?access_token=ACCESS_TOKEN
其中,获取ACCESS_TOKEN是关键
POST请求的json的格式如下
{
“touser”:”OPENID”,
“template_id”:”ngqIpbwh8bUfcSsECmogfXcV14J0tQlEpBO27izEYtY”,
“url”:”http://weixin.qq.com/download“,
“topcolor”:”#FF0000”,
“data”:{
“User”: {
“value”:”黄先生”,
“color”:”#173177”
},
“Date”:{
“value”:”06月07日 19时24分”,
“color”:”#173177”
},
“CardNumber”:{
“value”:”0426”,
“color”:”#173177”
},
“Type”:{
“value”:”消费”,
“color”:”#173177”
},
“Money”:{
“value”:”人民币260.00元”,
“color”:”#173177”
},
“DeadTime”:{
“value”:”06月07日19时24分”,
“color”:”#173177”
},
“Left”:{
“value”:”6504.09”,
“color”:”#173177”
}
}
}
我的代码实现
package com.weixin.handler;
import java.util.ArrayList