【钉钉开放平台】自定义机器人发送消息
作者:互联网
1 在钉钉群中添加自定义机器人
##1. 点击头像-->机器人管理-->自定义-->添加-->输入一个关键字-->添加完成就会生成如下的令牌
https://oapi.dingtalk.com/robot/send?access_token=你的令牌
##2. 测试
curl 'https://oapi.dingtalk.com/robot/send?access_token=你的令牌' \
-H 'Content-Type: application/json' \
-d '{"msgtype":"text", "text":{"content":"关键词-String"}}'
2 依赖maven
在使用钉钉前,需要先向本地maven仓库中导入钉钉所需的SDK。
2.1 下载钉钉服务店SDK
服务端SDK下载 - 钉钉开放平台 (dingtalk.com)
2.2 将钉钉的sdk安装到maven的本地仓库
需要在cmd界面执行,需要配置maven的bin目录在path路径下。
mvn install:install-file \
-Dfile=D:/development/Jars/taobao-sdk-java-auto_1479188381469-20210709.jar \
-DgroupId=com.dingtalk -DartifactId=dingtalk-api \
-Dversion=1.0.0 -Dpackaging=jar
2.3 导入dingtalk依赖
<!-- dingtalk依赖 -->
<dependency>
<groupId>com.dingtalk</groupId>
<artifactId>dingtalk-api</artifactId>
<version>1.0.0</version>
<scope>compile</scope>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
2.1 导入阿里云仓库中的DingTalk SDK
不知道是什么原因,官网上下载的jar包竟然不是最新版的。
故直接更改了pom文件去下载阿里云仓库中的sdk了。
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<groupId>org.example</groupId>
<artifactId>dingtalk_developers</artifactId>
<version>1.0-SNAPSHOT</version>
<properties>
<maven.compiler.source>8</maven.compiler.source>
<maven.compiler.target>8</maven.compiler.target>
</properties>
<repositories>
<!-- 阿里云仓库 -->
<repository>
<id>aliyun</id>
<url>http://maven.aliyun.com/nexus/content/groups/public</url>
</repository>
</repositories>
<dependencies>
<!-- dingtalk依赖 -->
<!-- <dependency>-->
<!-- <groupId>com.dingtalk</groupId>-->
<!-- <artifactId>dingtalk-api</artifactId>-->
<!-- <version>1.0.0</version>-->
<!-- <scope>compile</scope>-->
<!-- </dependency>-->
<dependency>
<groupId>com.ganshane.specs</groupId>
<artifactId>dingtalk-sdk</artifactId>
<version>20210115</version>
</dependency>
<dependency>
<groupId>commons-logging</groupId>
<artifactId>commons-logging</artifactId>
<version>1.2</version>
</dependency>
</dependencies>
</project>
3 自定义预警机器人
自定义机器人接入 - 钉钉开放平台 (dingtalk.com)
根据官网实现最基础的消息发送功能
package com.dawson.robot;
import com.dingtalk.api.DefaultDingTalkClient;
import com.dingtalk.api.DingTalkClient;
import com.dingtalk.api.request.OapiRobotSendRequest;
import com.dingtalk.api.response.OapiRobotSendResponse;
import com.taobao.api.ApiException;
import java.util.Arrays;
/**
* <p>自定义机器人消息发送测试</p>
* <p>创建时间:2021-7-15 10:24:20</p>
* <p>修改时间:2021-7-15 10:24:20</p>
* @author Dawson
* @version 1.0
*/
public class Test {
public static void main(String[] args) throws ApiException {
// 根据机器人的token获取DingTalkClient
DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?access_token=你的token");
// 创建请求对象
OapiRobotSendRequest request = new OapiRobotSendRequest();
// 文本消息
request.setMsgtype("text");
OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
// 注意内容中要包含你设置的关键词!
text.setContent("azkaban预警:Dawson test...");
request.setText(text);
// 添加联系方式对象
OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
at.setAtMobiles(Arrays.asList("13220802021"));
at.setIsAtAll(true);// @All
request.setAt(at);
// 发送
OapiRobotSendResponse response = client.execute(request);
System.out.println(response.isSuccess());
}
}
标签:OapiRobotSendRequest,自定义,dingtalk,--,机器人,开放平台,api,com 来源: https://blog.csdn.net/qq_41549663/article/details/118968201