package com.matrix.core.tools; import org.apache.http.HttpResponse; import org.apache.http.HttpStatus; import org.apache.http.client.HttpClient; import org.apache.http.client.methods.HttpPost; import org.apache.http.entity.StringEntity; import org.apache.http.impl.client.HttpClients; import org.apache.http.util.EntityUtils; import java.io.IOException; /** * 钉钉机器人工具 * * @author 李广林 * @email 935090232@qq.com * @date 2018年5月9日 */ public class DingDingRobotUtil { /** * 发送text类型的消息 * * @author admin * @email 935090232@qq.com * @date 2018年6月11日 * @param dingdingRobotToken * @param content * @param atMobile */ public static void sendText(String dingdingRobotToken, String content, String atMobile) { String at = ""; if (atMobile != null) { at = "\"at\":{\"atMobiles\":\"[" + atMobile + "]\" , \"isAtAll\": false}"; } content = content.replace("\"", "\\\""); String textMsg = "{ \"msgtype\": \"text\", \"text\": {\"content\":\"" + content + "\"} ," + at + "}"; sendMsg(dingdingRobotToken, textMsg); } /** * 发送链接消息 * * @author admin * @email 935090232@qq.com * @date 2018年6月11日 * @param dingdingRobotToken * @param content * @param title * @param picUrl * @param messageUrl */ public static void sendLink(String dingdingRobotToken, String content, String title, String picUrl, String messageUrl) { content = content.replace("\"", "\\\""); String textMsg = "{ \"msgtype\": \"link\", \"link\": {\"text\":\"" + content + "\" , \"title\":\"" + title + "\" , \"picUrl\":\"" + picUrl + "\" , \"messageUrl\":\"" + messageUrl + "\" } }"; sendMsg(dingdingRobotToken, textMsg); } private static void sendMsg(String dingdingRobotToken, String content) { HttpClient httpclient = HttpClients.createDefault(); HttpPost httppost = new HttpPost(dingdingRobotToken); httppost.addHeader("Content-Type", "application/json; charset=utf-8"); StringEntity se = new StringEntity(content, "utf-8"); httppost.setEntity(se); HttpResponse response; try { response = httpclient.execute(httppost); if (response.getStatusLine().getStatusCode() == HttpStatus.SC_OK) { String result = EntityUtils.toString(response.getEntity(), "utf-8"); } } catch (IOException e) { e.printStackTrace(); } } }