>  기사  >  Java  >  DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

coldplay.xixi
coldplay.xixi앞으로
2020-08-13 17:16:423243검색

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

먼저 DingTalk 그룹을 만들고 로봇을 추가하세요

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

이때 로봇 IT는 추가되었으니 로봇형님과 연결하는 코드를 작성해 볼까요

import com.alibaba.fastjson.JSON;
import com.google.common.collect.Lists;
import com.google.common.collect.Maps;
import java.util.List;
import java.util.Map;

/**
 * @author yanghao
 * @version DingTalkTest.java, v 0.1 2019-03-29 11:36
 */
public class DingTalkTest {

 public static void main(String[] args){

 try {
  //钉钉机器人地址(配置机器人的webhook)
  String dingUrl = "https://oapi.dingtalk.com/robot/send?access_token=............";

  //是否通知所有人
  boolean isAtAll = false;
  //通知具体人的手机号码列表
  List<String> mobileList = Lists.newArrayList();

  //钉钉机器人消息内容
  String content = "小哥,你好!";
  //组装请求内容
  String reqStr = buildReqStr(content, isAtAll, mobileList);

  //推送消息(http请求)
  String result = HttpUtil.postJson(dingUrl, reqStr);
  System.out.println("result == " + result);

 }catch (Exception e){
  e.printStackTrace();

 }

 }

 /**
 * 组装请求报文
 * @param content
 * @return
 */
 private static String buildReqStr(String content, boolean isAtAll, List<String> mobileList) {
 //消息内容
 Map<String, String> contentMap = Maps.newHashMap();
 contentMap.put("content", content);

 //通知人
 Map<String, Object> atMap = Maps.newHashMap();
 //1.是否通知所有人
 atMap.put("isAtAll", isAtAll);
 //2.通知具体人的手机号码列表
 atMap.put("atMobiles", mobileList);

 Map<String, Object> reqMap = Maps.newHashMap();
 reqMap.put("msgtype", "text");
 reqMap.put("text", contentMap);
 reqMap.put("at", atMap);

 return JSON.toJSONString(reqMap);
 }

}

실행 결과는 다음과 같습니다.

result == {"errmsg":"ok","errcode":0}

DingTalk 그룹 표시 메시지:

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

좋아요, 간단한 메시지 푸시 완료!

모든 사람에게 알리고 특정 사람에게 다시 알리는 테스트를 해보자

isAtAll을 true로 변경

//是否通知所有人
boolean isAtAll = true;
//通知具体人的手机号码列表
List<String> mobileList = Lists.newArrayList();

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

알림자 번호 목록을 추가하세요 (참고: isAtAll과 mobileList는 동시에 적용될 수 없습니다)

//是否通知所有人
boolean isAtAll = false;
//通知具体人的手机号码列表
List<String> mobileList = Lists.newArrayList();
mobileList.add("182********");

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

특수 기호를 다시 테스트해 보겠습니다

줄 바꿈 식별자

/**
 * 换行标识符
 */
private static final String NEWLINE = "\n";

//钉钉机器人消息内容
//String content = "小哥,你好!";
StringBuffer sb = new StringBuffer();
sb.append("小哥,你好!")
 .append(NEWLINE)
 .append("看会书");

String content = sb.toString();

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

emoji 사진

먼저 emoji 사진의 유니코드 인코딩을 가져옵니다

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

쓰기 코드는 다음과 같습니다:

/**
 * 苹果unicode编码
 */
private static final String APPLE = "\ud83c\udf4e";

//钉钉机器人消息内容
//String content = "小哥,你好!";
StringBuffer sb = new StringBuffer();
sb.append("小哥,你好!")
 .append(NEWLINE)
 .append("看会书")
 .append(NEWLINE)
 .append("吃个").append(APPLE);

String content = sb.toString();

DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.

보통 우리 프로젝트에 일부 알람으로 추가되어 편리하고 실용적입니다.
다양한 실용적인 기술을 갖춘 매우 흥미로운 DingTalk 로봇으로 깊이있게 탐색할 수 있습니다!

2019-12-05에 업데이트되었습니다

많은 친구들이 http 요청에 대해 문의하는 메시지를 남겼습니다. 여기에 2개의 http 요청 코드가 있습니다.

<!--糊涂工具-->
<dependency>
 <groupId>cn.hutool</groupId>
 <artifactId>hutool-all</artifactId>
 <version>4.0.12</version>
</dependency>

2. Maven이 아닌 프로젝트

jar 패키지 추가

httpclient-xxx.jar

commons-logging-xxx.jar

http 요청 코드

private static final int timeout = 10000; 

public static String postJson(String url, String reqStr) {
 String body = null;
 try {
  body = HttpRequest.post(url).body(reqStr).timeout(timeout).execute().body();
 } catch (Exception e) {
  e.printStackTrace();
 }
 return body;
}
방법은 참고용이며 이미 만들어져 있습니다. 프로젝트의 http 요청을 직접 사용할 수 있습니다!



관련 학습 권장사항:

Java 기본 튜토리얼

위 내용은 DingTalk 로봇 메시지 푸시를 위한 샘플 코드를 구현하기 위해 Java를 배우십시오.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
이 기사는 jb51.net에서 복제됩니다. 침해가 있는 경우 admin@php.cn으로 문의하시기 바랍니다. 삭제