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.Dictionary;
/**
* 钉钉actionCard消息
* @author lanyu
* @date 2024/1/25 8:44
*/
public class DingTalkActionCard {
private static final String ACTION_CARD = "actionCard";
/**
* @param accessToken 机器人地址
* @param signSecret 签名
* @param title 消息卡片标题
* @param singleTitle 跳转按钮文字
* @param text 消息卡片内容
* @param singleUrl 跳转网址
* @param btnOrientation 按钮排列方式(0:按钮竖直排列,1:按钮横向排列)
* @param buttons 按钮及跳转网址
*/
public static String sendActionCard(String accessToken, String signSecret, String title, String singleTitle, String text, String singleUrl, String btnOrientation, Dictionary<String, String> buttons){
if (!(signSecret==null || "".equals(signSecret))) {
accessToken = SignOperation.sign(accessToken, signSecret);
}
DingTalkClient client = new DefaultDingTalkClient(accessToken);
OapiRobotSendRequest request = new OapiRobotSendRequest();
request.setMsgtype(ACTION_CARD);
OapiRobotSendRequest.Actioncard actioncard = new OapiRobotSendRequest.Actioncard();
actioncard.setTitle(title);
actioncard.setText(text);
actioncard.setSingleTitle(singleTitle);
actioncard.setSingleURL(singleUrl);
actioncard.setBtnOrientation(btnOrientation);
actioncard.setBtns(ButtonsOperation.button(buttons));
request.setActionCard(actioncard);
OapiRobotSendResponse response = null;
try {
response = client.execute(request);
} catch (ApiException e) {
System.out.println("消息发送失败,错误:" + e);
}
return response.toString();
}
/**
* @param accessToken 机器人地址
* @param title 消息卡片标题
* @param singleTitle 跳转按钮文字
* @param text 消息卡片内容
* @param singleUrl 跳转网址
* @param btnOrientation 按钮排列方式(0:按钮竖直排列,1:按钮横向排列)
* @param buttons 按钮及跳转网址
*/
public static String sendActionCard(String accessToken, String title, String singleTitle, String text, String singleUrl, String btnOrientation, Dictionary<String, String> buttons){
return sendActionCard(accessToken, null, title, singleTitle, text, singleUrl, btnOrientation, buttons);
}
/**
* @param accessToken 机器人地址
* @param signSecret 签名
* @param title 消息卡片标题
* @param singleTitle 跳转按钮文字
* @param text 消息卡片内容
* @param singleUrl 跳转网址
*/
public static String sendActionCard(String accessToken, String signSecret, String title, String singleTitle, String text,String singleUrl){
return sendActionCard(accessToken, signSecret, title, singleTitle, text, singleUrl, null, null);
}
/**
* @param accessToken 机器人地址
* @param title 消息卡片标题
* @param singleTitle 跳转按钮文字
* @param text 消息卡片内容
* @param singleUrl 跳转网址
*/
public static String sendActionCard(String accessToken, String title, String singleTitle, String text,String singleUrl){
return sendActionCard(accessToken, null, title, singleTitle, text, singleUrl, null, null);
}
/**
* @param accessToken 机器人地址
* @param signSecret 签名
* @param title 消息卡片标题
* @param text 消息卡片内容
* @param btnOrientation 按钮排列方式(0:按钮竖直排列,1:按钮横向排列)
* @param buttons 按钮及跳转网址
*/
public static String sendActionCard(String accessToken, String signSecret, String title, String text, String btnOrientation, Dictionary<String, String> buttons){
return sendActionCard(accessToken, signSecret, title, null, text, null, btnOrientation, buttons);
}
/**
* @param accessToken 机器人地址
* @param title 消息卡片标题
* @param text 消息卡片内容
* @param btnOrientation 按钮排列方式(0:按钮竖直排列,1:按钮横向排列)
* @param buttons 按钮及跳转网址
*/
public static String sendActionCard(String accessToken, String title, String text, String btnOrientation, Dictionary<String, String> buttons){
return sendActionCard(accessToken, null, title, null, text, null, btnOrientation, buttons);
}
}
钉钉机器人Java消息提示封装
需积分: 0 39 浏览量
更新于2024-03-30
收藏 7KB ZIP 举报
工具类中封装了钉钉文本消息、钉钉markdown消息、钉钉link消息、钉钉feedCard消息、钉钉actionCard消息的消息提醒工具类,传入对应参数即可使用,用前需要自定导入钉钉的所使用的jar包,对应的pom:
<dependency>
<groupId>com.aliyun</groupId>
<artifactId>alibaba-dingtalk-service-sdk</artifactId>
<version>2.0.0</version>
</dependency>
注:本文件中所有package全部已经删除,导入个人文件后根据开发工具提示自动添加后即可使用。
c语言是世界上最好的语言
- 粉丝: 734
- 资源: 1
最新资源
- hasp加密狗驱动,此类型加密驱动都是可以用的,插入加密狗,加密狗无法正常工作或点亮的,安装最新版本即可解决
- C++多线程同步机制与条件变量的类实例化应用
- 2024 年最新基于 Python 微信开源框架 itchat 库(压缩包)
- python开发工具-kaic.zip
- 车道线检测:视频识别检测和标定车道线,霍夫曼变换算法.rar
- mmexport1735398415403.mp4
- 基于Matlab界面的的DWT数字水印[置乱,反置乱,评价,GUI框].rar
- 基于Matlab界面的家居防火(火焰识别的创新应用,有火焰则发送信息给模拟用户终端).rar
- 基于Matlab界面的金属表面缺陷分析(SVM算法).rar
- 基于Matlab界面的脐橙水果分级【多参数,GUI框架,完美运行】.rar
- 基于Matlab界面的人脸识别(Pca和pca+Bp两方法,提升识别率).rar
- 基于Matlab界面的水果分级系统(果径,色泽,缺陷,Bp神经网络算法).rar
- 图像去雾基于基于Matlab界面的(多方法对比,PSNR,信息熵,GUI界面).rar
- 指纹识别基于Matlab界面的(GUI界面,比对两幅指纹).rar
- 直车道线检测(GUI界面,详细文档解析).rar
- IMG_1563.PNG