项目场景:

企业微信应用发送定时任务消息

需求文本消息


遇到的bug

1.本地测试遇见“errcode“:60020,“errmsg“:“not allow to access from your ip

需要添加应用可信Ip,这里面编辑就行

2.发送报错errcode":40008,"errmsg":"Warning: wrong json format

我这里是参数入错

这是官方文档

发送应用消息 - 接口文档 - 企业微信开发者中心

本地因为用的阿里规范(驼峰的),匹配不到,报错


代码实现:

获取发送目标  删减的,成员Id根据项目获取

List<User> list = new ArrayList<>();
String user = "";
for (int i = 0; i<list.size();i++){if (i < list.size()-1 ){String userCode = list.get(i).getUserId();user += userCode+"|";}else{String userCode = list.get(i).getUserId();user += userCode;}
}

发送消息:

/*封装消息
*/
@Override
public AjaxResult sendMessages(String toUser, String contentValue) {//创建文本消息对象TextMessageVo message = new TextMessageVo();message.setTouser(toUser);message.setMsgtype("text");TextVo text = new TextVo();text.setContent(contentValue);message.setText(text);//发送消息AjaxResult ajaxResult = sendMessage(message);return ajaxResult;
}/*** 公共方法:发送消息* @param message*/
public AjaxResult sendMessage(BaseMessageVo message){Integer agentId = Integer.valueOf(DictUtils.getDictValue("enterprise_wx","agentId"));message.setAgentid(agentId);// 获取 accessTokenString accessToken = weiXinQiYeUtil.accessToken();// 1.获取 json 字符串:将 message 对象转换为 json 字符串Gson gson = new Gson();String jsonMessage = gson.toJson(message);System.out.println("jsonTextMessage:"+jsonMessage);// 2.请求的 urlString sendMessageUrl = "https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token="+accessToken;// 3.调用接口,发送消息JSONObject jsonObject = HttpRequestUtil.httpRequest(sendMessageUrl, "POST", jsonMessage);System.out.println("jsonObject:"+jsonObject.toString());// 4.错误消息处理if (null != jsonObject) {if (0 != jsonObject.getByte("errcode")) {return AjaxResult.error("发送消息失败!");}return AjaxResult.success();}return null;
}
@Data
public class TextMessageVo extends BaseMessageVo{/*** 文本*/private TextVo text;/*** 表示是否是保密消息,0表示否,1表示是,默认0*/private int safe;
}
@Data
public class BaseMessageVo {/*** 成员ID列表(消息接收者,多个接收者用‘|’分隔,最多支持1000个)。* 非必传* 特殊情况:指定为@all,则向该企业应用的全部成员发送* touser、toparty、totag不能同时为空。*/private String touser;/*** 部门ID列表,多个接收者用‘|’分隔,最多支持100个。* 非必传* 当touser为@all时忽略本参数*/private String toparty;/*** 标签ID列表,多个接收者用‘|’分隔,最多支持100个。* 非必传* 当touser为@all时忽略本参数*/private String totag;/*** 消息类型* 必传*/private String msgtype;/*** 企业应用的id。可在应用的设置页面查看* 必传*/private int agentid;
}
@Data
public class TextVo {/*** 消息内容,最长不超过2048个字节* 必传*/private String content;
}

企业微信应用发送消息相关推荐

  1. C# 企业微信接口发送消息出现错误代码60020解决方案,希望能给大家带来帮助。

    这是企业微信接口发送消息调用的代码源地址. https://blog.csdn.net/wanglui1990/article/details/79744407 代码运行起来是没有问题的,但唯一出现的 ...

  2. 封装Python脚本:使用企业微信机器人发送消息至企业微信

    官方文档地址:https://developer.work.weixin.qq.com/document/path/91770#%E5%A6%82%E4%BD%95%E4%BD%BF%E7%94%A8 ...

  3. 企业微信机器人发送消息

    背景:之前用钉钉机器人可以发送消息,可以将线上的告警通知发送到消息群中,后来企业微信也支持在群组中增加机器人了,钉钉和企业微信机器人的使用很相似,都是使用webhook的方式来进行实现的,话不多说,咱 ...

  4. Python3 使用企业微信 API 发送消息

    现在大部分情况下,企业里运维监控的系统都需要给运维人员发送一些报警之类的信息,之前都是发送邮件,目前有腾讯推出了企业微信,也开放了其 API 接口.我们可以利用其 API 接口来给企业微信第账号发送信 ...

  5. C#实现在企业微信内发送消息给指定人员帮助类

    一.实现效果 实现通过企业微信将指定的消息内容发送给指定的一个或多个人员,可以直接发送文本内容,或卡片消息,实现的效果如下: 这是文本内容展示效果 这是卡片展示效果(包含标题.时间和重要信息重点提示, ...

  6. Java代码实现向企业微信用户发送消息

    公司内部交流使用的企业微信,最近项目中要实现向员工发送企业微信通知,于是看了下企业微信的api,简单实现了下: 1. 其实就是一个HTTP请求,如下 请求方式:POST(HTTPS) 请求地址: ht ...

  7. java对接企业微信机器人发送消息

    [Java]企业微信机器人自动发送群消息 先在群里添加机器人,然后获取机器人的webhook地址: 假设webhook是:https://qyapi.weixin.qq.com/cgi-bin/web ...

  8. python程序向企业微信机器人发送消息

    一.创建企业群聊 二.创建机器人 点击完成,复制webhook地址,如下: 三.执行代码 import requestsweb_hook_url = "https://qyapi.weixi ...

  9. java调用企业微信接口发送文件功能

    java调用企业微信接口发送文件功能 代码 结合几位大佬的代码后实现此功能:感谢大佬让我完成此功能的实现,如有侵权,立刻删除. 借鉴文章地址: java调用企业微信接口发送消息https://blog ...

  10. 企业微信发送应用消息php,企业微信如何发送应用消息?及时发布重要通知

    很多企业以前向员工发布通知的时候,要么是通过开会的方式传达,要么是通过文档的方式来通知员工.可是这样效率低,而且结果往往通知不到位.故此,现在很多企业开始使用企业微信发送应用消息来发布内部的重要通知. ...

最新文章

  1. 前端红宝书《JavaScript高级程序设计》核心知识总结
  2. 量子位「MEET 2021智能未来大会」启动,邀智能科技企业共探明日行业新格局
  3. tcp-ip协议详解二知识进阶
  4. Kotlin实战指南一:集合
  5. python input 文件名_Python播放音频与录音
  6. jwt如何防止token被窃取_在吗?认识一下JWT(JSON Web Token)?
  7. 【NGS接龙】薛宇:漫谈生物信息圈儿的那些年、那些事!
  8. hadoop 概要
  9. 【高并发解决方案】1、高并发解决方案汇总
  10. 二维数组最大值首尾相连
  11. 平面设计什么情况下会用到对比构图与调和构图
  12. 2021年山东省职业院校技能大赛中职组”网络安全“正式赛题
  13. 解决关键词这个问题,ASO优化效果事半功倍
  14. 干货 | 教你打造一款颜值逆天的VS Code
  15. c# 贪婪匹配 html,C#正则表达式之贪婪模式
  16. 《小话投行》转自2011 Morgan Stanley HK IBD唯一的大陆本科生
  17. 【python】7-4 p019车牌限号
  18. python发音小程序
  19. 光合作用9月五星推荐图书
  20. 由浅入深学习Flash制作高射炮游戏(2)

热门文章

  1. 360极速浏览器如何设置ie8兼容模式
  2. 计算机测绘程序设计实验报告,计算机测绘程序及设计实验报告.doc
  3. iOS App 签名的原理 App 重签名(一)
  4. wps序号打乱重新排序_wps表格序号自动排列
  5. 五一成都峨眉山三日游 20140501~20140503
  6. 图扑数字孪生北京故宫,推进旅游业元宇宙进程
  7. 图文排版html,超漂亮的网页图文排版欣赏
  8. 计算机中的逻辑与或非,与或非运算(与或非逻辑运算口诀)
  9. 【捣鼓】TypeError: “x” is not a constructor
  10. 【开源教程9】疯壳·开源蓝牙心率防水运动手环-心率监测