做暧昧的小视频网站2,家电维修做网站生意怎么样,凡科网门店通,网站建设课程感想钉钉自定义机器人使用 加签的配置 发送消息
注意#xff1a;内部群才可以创建自定义机器人 钉钉网址-自定义机器人创建
1、获得的钉钉配置信息workhook和secret
//url路径private String URL https://oapi.dingtalk.com/robot/send?access_token08ebaa04f98f7faacb…钉钉自定义机器人使用 加签的配置 发送消息
注意内部群才可以创建自定义机器人 钉钉网址-自定义机器人创建
1、获得的钉钉配置信息workhook和secret
//url路径private String URL https://oapi.dingtalk.com/robot/send?access_token08ebaa04f98f7faacbacd80fa879463d85cdccdd6cef184ef01bb5a8b6ae6f6c;
//加签密钥private String DINGDING_SECRET SEC27596efd776991b2f6786270fa59552459f64612b17adf377295669361af3fae;
2、配置加签
配置路径 private String getSign() {Long timestamp System.currentTimeMillis();String stringToSign timestamp \n DINGDING_SECRET;Mac mac null;String sign null;try {mac Mac.getInstance(HmacSHA256);mac.init(new SecretKeySpec(DINGDING_SECRET.getBytes(UTF-8), HmacSHA256));byte[] signData mac.doFinal(stringToSign.getBytes(UTF-8));sign URLEncoder.encode(new String(Base64.encodeBase64(signData)), UTF-8);} catch (Exception e) {throw new IllegalArgumentException(加签处理有误);}return timestamp timestamp sign sign;}3、按照钉钉要求整理json数据结构
如果phone为null则发送普通消息不为空则发送给特定的人 private JSONObject buildDingDingMessage(String phone, String message) {//2、按要求配置参数格式JSONObject json new JSONObject();json.put(msgtype, text);json.put(text, new JSONObject() {{put(content, message);}});if (!UtilString.isBlank(phone)) {ArrayListString list new ArrayList();list.add(phone);json.put(at, new JSONObject() {{put(atMobiles, list.toArray());}});}return json;}Overridepublic void doSendMessage(String phone, String message) {//1、检查数据if (UtilString.isBlank(message)) {throw new IllegalArgumentException(请输入钉钉服务机器人要输出的信息);}//2、配置钉钉信息JSONObject json buildDingDingMessage(phone, message);//3、请求String url URL getSign();String responseText HttpClient.textBody(url).json(json.toJSONString()).connectTimeout(60).readTimeout(5 * 60).writeTimeout(5 * 60).asString();
//无错则不发送日志消息JSONObject responseJson JSON.parseObject(responseText);if (!responseJson.getString(errmsg).equals(ok)) {log.error(responseJson.getString(errmsg));}}