当前位置:首页 » 《随便一记》 » 正文

微信公众号-推送模板消息

19 人参与  2022年09月23日 12:00  分类 : 《随便一记》  评论

点击全文阅读


模板消息文档

公众号的类型分为服务号、订阅号和企业号,其中服务号和订阅号比较常见。要想实现公众号推动消息给指定的用户,其类型必须为服务号。

推送的模板消息示例如下 :

模板消息Demo-正式

设置模板消息

此处为正式环境的设置,开发环境可使用微信测试平台提供的测试账号体验和测试公众平台的所有高级接口,无需提前申请审核,详情见本文最后章节。

首次设置需要开启模板消息功能,登录公众号后台: mp.weixin.qq.com ,在左侧导航栏最下方有「添加新的功能」,打开,在「广告与服务」一类中找到「模板消息」,开通即可。

打开「模板消息」,选择模板库,需先选择所在行业(一个月只能修改一次),之后在下方的行业模板中选择合适的模板(可以搜索模板关键字)。

在这里插入图片描述

添加完选择的模板后在「我的模板」中可以查看模板的详细信息,此处的模板ID后面代码中会用到。

在这里插入图片描述

编码

1. 添加依赖

// Gradledependencies {// ...compile "com.github.binarywang:weixin-java-mp:3.3.0"// ...}// Maven<dependency>  <groupId>com.github.binarywang</groupId>  <artifactId>weixin-java-mp</artifactId>  <version>3.0.0</version></dependency>

2. SubscriptionMessageUtil.java

import me.chanjar.weixin.mp.api.WxMpInMemoryConfigStorage;import me.chanjar.weixin.mp.api.WxMpService;import me.chanjar.weixin.mp.api.impl.WxMpServiceImpl;import me.chanjar.weixin.mp.bean.template.WxMpTemplateData;import me.chanjar.weixin.mp.bean.template.WxMpTemplateMessage;import java.text.SimpleDateFormat;import java.util.Arrays;import java.util.Date;import java.util.List;public class SubscriptionMessageUtil {    /**     * 下单后通知供货商     */    public static void sendOrderMsg(String appid,                                    String appSecret,                                    String userOpenid,                                    String orderId,                                    String serviceName) {        // 模板消息 ID        // {{first.DATA}}        // 订单编号:{{keyword1.DATA}}        // 订货终端:{{keyword2.DATA}}        // 下单时间:{{keyword3.DATA}}        // {{remark.DATA}}        String OrderMsgTemplateId = "Th5MwuyqSjfADUDOJ5PSGDf1swr1-nHmOtLYlVX8n_8";        // 卡片详情跳转页,设置此值,当点击消息时会打开指定的页面//        String detailUrl = "https://bing.com";        SimpleDateFormat sdf = new SimpleDateFormat();        sdf.applyPattern("yyyy-MM-dd HH:mm");        Date date = new Date();        String timeNow = sdf.format(date);        WxMpInMemoryConfigStorage wxStorage = new WxMpInMemoryConfigStorage();        wxStorage.setAppId(appid);        wxStorage.setSecret(appSecret);        WxMpService wxMpService = new WxMpServiceImpl();        wxMpService.setWxMpConfigStorage(wxStorage);      // 此处的 key/value 需和模板消息对应        List<WxMpTemplateData> wxMpTemplateDataList = Arrays.asList(                new WxMpTemplateData("first", "您有一个新的订货单", "#000000"),                new WxMpTemplateData("keyword1", orderId),                new WxMpTemplateData("keyword2", serviceName),                new WxMpTemplateData("keyword3", timeNow),                new WxMpTemplateData("remark", "请登录系统查看订单详情并及时配货")        );        WxMpTemplateMessage templateMessage = WxMpTemplateMessage.builder()                .toUser(userOpenid)                .templateId(OrderMsgTemplateId)                .data(wxMpTemplateDataList)//                .url(detailUrl)                .build();        try {            wxMpService.getTemplateMsgService().sendTemplateMsg(templateMessage);        } catch (Exception e) {            System.out.println("推送失败:" + e.getMessage());        }    }}

3. 配置参数

xx.properties

wx:  mp:    appid: xxx    appSecret: xxx

4. 使用

在需要的 Controller 中直接引用即可

@Controller@RequestMapping("/order")public class XXController {  @Value("${wx.mp.appid}")private String APPID;@Value("${wx.mp.appSecret}")private String APP_SECRET;    @RequestMapping(value = "/create", method = RequestMethod.POST)  public CommonResult create() {        String openid = "";// 发送给指定的用户    String serviceName = "";    String orderNo = "";        SubscriptionMessage.sendOrderMsg(APPID, APP_SECRET, openid, orderNo, serviceName);  }  }

微信测试号

开发过程中直接使用正式微信号、公众号可能会有诸多不便,所以微信公众平台提供接口测试账号,可直接体验和测试公众平台所有高级接口。

地址: 微信公众平台测试账号

登录后可查看测试账号的 appid、appsecret

在这里插入图片描述

可以使用微信扫描页面下方的测试公众号二维码关注,关注后可获取当前微信号的测试 openid(非公众账号的 openid),可用于代码中临时指定模板消息接收用户,方便开发。

在这里插入图片描述

该测试平台还提供测试用模板消息,可自定义模板消息,创建完成后会临时生成模板 ID ,代码中直接替换即可。

在这里插入图片描述

接收消息示例如下:

接收消息 demo

点击全文阅读


本文链接:http://m.zhangshiyu.com/post/45049.html

<< 上一篇 下一篇 >>

  • 评论(0)
  • 赞助本站

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

最新文章

  • 相国独子的丫鬟砸坏我的玉佩后,我当场拒婚阅读_玉佩陈郡谢氏全新_小说后续在线阅读_无删减免费完结_
  • 手术时,我看着病人惨死最新试读_淼淼陆知衍姜颜全本完结_小说后续在线阅读_无删减免费完结_
  • 男友霸道给我开黑卡,转头却骂我是捞女最新章节_肖年顾客黑卡热文_小说后续在线阅读_无删减免费完结_
  • 他在回忆尽头全集_贺南舟许清梨叶絮完结txt_小说后续在线阅读_无删减免费完结_
  • 旅游结婚那天未婚夫另娶女秘书,我让他们一无所有连载_老公迎宾超长版_小说后续在线阅读_无删减免费完结_
  • 完结文异界修仙我的直播间能打赏核弹列表_完结文异界修仙我的直播间能打赏核弹(江流年沈红菱)
  • 全书浏览陪弟弟混骑行圈,离婚你哭什么?(韩星河柳千雪)_陪弟弟混骑行圈,离婚你哭什么?(韩星河柳千雪)全书结局
  • 老公出轨我助攻虐心反转_秦绍卿卿阿溪后续加长_小说后续在线阅读_无删减免费完结_
  • 替老婆坐牢出狱那天,我被送去斗兽场精校文本_许言沈宇郑子番茄热门_小说后续在线阅读_无删减免费完结_
  • 沐巍澜温溪:结局+番外(爱如一刹花火)电子书畅享阅读无广告
  • 傅凌川林柚续集(傅凌川林柚)章节前文+全书阅读(替嫁燃婚:小祖宗嘴硬腰软)最新连载
  • 资助生把导盲犬做成火锅后,我家杀疯了!列表_资助生把导盲犬做成火锅后,我家杀疯了!(陈米雪波波)

    关于我们 | 我要投稿 | 免责申明

    Copyright © 2020-2022 ZhangShiYu.com Rights Reserved.豫ICP备2022013469号-1