首先新建钉钉群,并新增机器人
官方建议三种安全设置方式必须选择一种:
我们这里选择加签,需要设置机器人:
相关代码如下:
//密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串。 String secret = "xxx"; //Webhook地址中的access_token String token = "xxx"; @Override public String context() { String value = "99"; String context = String.format("xxxx日报rn" + "rn" + "当日营收%s万元。。此处内容省略", value ); return context; } @Override public String messageGroup() throws Exception { //获取发送内容 String context = this.context(); //签名认证 Long timestamp = System.currentTimeMillis(); String stringToSign = timestamp + "n" + secret; Mac mac = Mac.getInstance("HmacSHA256"); mac.init(new SecretKeySpec(secret.getBytes("UTF-8"), "HmacSHA256")); byte[] signData = mac.doFinal(stringToSign.getBytes("UTF-8")); String sign = URLEncoder.encode(new String(base64.encodebase64(signData)), "UTF-8"); DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?access_token=" + token + "×tamp=" + timestamp + "&sign=" + sign); OapiRobotSendRequest request = new OapiRobotSendRequest(); // 独立跳转ActionCard类型 request.setMsgtype("actionCard"); OapiRobotSendRequest.Actioncard actioncard = new OapiRobotSendRequest.Actioncard(); actioncard.setTitle("xx项目"); //图文 actioncard.setText("![screenshot](https://xxxx.com/temp/banner%20%282%29.png)" + context); actioncard.setSingleTitle("查看详情"); //设置跳转地址 actioncard.setSingleURL("https://xxxx"); request.setActionCard(actioncard); client.execute(request); return ""; }
最终实现效果如下:
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)