codecamp

wx-tools 消息相关API

包括如下接口:
- sendAllByTag - 群发-通过标签
- sendAllByOpenid - 群发-通过openid
- sendAllPreview - 群发预览
- sendAllDelete - 删除群发
- sendAllGetStatus - 查询群发状态
- templateSetIndustry - 设置模板行业
- templateGetIndustry - 查询模板行业
- templateGetId - 获取模板ID
- templateGetList - 获取模板列表
- templateDelete - 删除模板
- templateSend - 发送模板

3.4.1 sendAllByTag 通过用户标签来群发

    WxTagSender sender = new WxTagSender();
    //设置哪些组需要接受群发
    sender.setFilter(new SenderFilter(true, 1));
    //群发文本内容
    sender.setText(new Text("文本内容"));
    try {
        SenderResult result = iService.sendAllByTag(sender);
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

如果发其他类型的消息:

    //群发图片,以此类推
    sender.setImage(new Media("media_id"));

3.4.2 sendAllByOpenid 针对某群人的openid群发

    WxOpenidSender sender = new WxOpenidSender();
    List<String> openidList = new ArrayList<>();
    openidList.add("openid1");
    openidList.add("openid2");
    sender.setTouser(openidList);
    //群发文本内容
    sender.setText(new Text("文本内容"));
    try {
        SenderResult result = iService.sendAllByOpenid(sender);
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.3 sendAllPreview 群发预览

    PreviewSender sender = new PreviewSender();
    //设置openid或者微信号,优先级为wxname高
    sender.setTouser("openid");
    sender.setTowxname("微信号");
    //群发文本内容
    sender.setText(new Text("文本内容"));
    try {
        SenderResult result = iService.sendAllPreview(sender);
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.4 sendAllDelete 删除群发

    try {
        //msg_id参数在群发接口中返回
        SenderResult result = iService.sendAllDelete("msg_id");
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.5 sendAllGetStatus 获取群发状态

    try {
        SenderResult result = iService.sendAllGetStatus("msg_id");
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.6 templateSetIndustry 设置模板消息的行业

    //行业代码参考官方文档。
    try {
        iService.templateSetIndustry("1", "4");
    } catch (WxErrorException e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

3.4.7 templateGetIndustry获取模板消息的行业设置

    try {
        IndustryResult result = iService.templateGetIndustry();
        System.out.println(result.getPrimary_industry());
        System.out.println(result.getSecondary_industry());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.8 templateGetId通过短ID获取模板ID

    //模板库中模板的编号,有“TM**”和“OPENTMTM**”等形式
    try {
        TemplateResult result = iService.templateGetId("template_id_short");
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.9 templateGetList 获取模板列表

    try {
        TemplateListResult result = iService.templateGetList();
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.10 templateDelete 删除模板

    try {
        iService.templateDelete("template_id");
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

3.4.11 templateSend 模板消息发送

    TemplateSender sender = new TemplateSender();
    sender.setTouser("openid");
    sender.setTemplate_id("templateId");
    sender.setData("Object:与模板内容对应的对象");
    sender.setUrl("url");
    try {
        TemplateSenderResult result = iService.templateSend(sender);
        System.out.println(result.toString());
    } catch (WxErrorException e) {
        e.printStackTrace();
    }

参数说明:

  • openid需要发送给哪个用户
  • templateId 模板ID
  • Data: 假设模板格式中有三个字段,分别为:

    • first.DATA
    • keyword1.DATA
    • remark.DATA

    那么就需要创建一个类, 里面包含三个成员变量.如:

    public class Template{
    private String first;
    private String keyword1;
    private String remark;
    }

  • Url 点击模板消息时跳转的页面.
wx-tools 资源上传相关API
wx-tools 图文相关API
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }