Java 推送消息到釘釘羣

項目需要,有些監控信息,需要推送到釘釘羣,Java實現,參考官方文檔,整個工具類。

package com.my.tool.utils;

import com.dingtalk.api.DefaultDingTalkClient;
import com.dingtalk.api.DingTalkClient;
import com.dingtalk.api.request.OapiRobotSendRequest;
import com.dingtalk.api.response.OapiRobotSendResponse;

import java.util.Arrays;

/**
 * @Author: 技術大咖秀
 * @Date: 2020/5/12 9:50
 */
public class DingTalkUtil {

    protected static final String WEB_HOOK_ACCESS_BIG_DATA = "https://oapi.dingtalk.com/robot/send?access_token=XXXXXXXXXXXXXXXXXXXXXXX";

    public static void sendText(){
        try {
            DingTalkClient client = new DefaultDingTalkClient(WEB_HOOK_ACCESS_BIG_DATA);
            OapiRobotSendRequest request = new OapiRobotSendRequest();
            request.setMsgtype("text");
            OapiRobotSendRequest.Text text = new OapiRobotSendRequest.Text();
            text.setContent("【監控預警】採集報錯!");
            request.setText(text);
            OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
            at.setAtMobiles(Arrays.asList("18xxxxxxx3"));
            // isAtAll類型如果不爲Boolean,請升級至最新SDK
            at.setIsAtAll(false);
            request.setAt(at);

            OapiRobotSendResponse response = client.execute(request);
        } catch (Exception e){
            e.printStackTrace();
        }

    }

    public static void sendLink(){
        try {
            DingTalkClient client = new DefaultDingTalkClient(WEB_HOOK_ACCESS_BIG_DATA);
            OapiRobotSendRequest request = new OapiRobotSendRequest();
            request.setMsgtype("link");
            OapiRobotSendRequest.Link link = new OapiRobotSendRequest.Link();
            link.setMessageUrl("https://www.dingtalk.com/");
            link.setPicUrl("");
            link.setTitle("時代的火車向前開");
            link.setText("監控,這個即將發佈的新版本,創始人xx稱它爲紅樹林。而在此之前,每當面臨重大升級,產品經理們都會取一個應景的代號,這一次,爲什麼是紅樹林");
            request.setLink(link);

            OapiRobotSendResponse response = client.execute(request);
        } catch (Exception e){
            e.printStackTrace();
        }
    }

    public static void sendMarkDown(){
        try {
            DingTalkClient client = new DefaultDingTalkClient(WEB_HOOK_ACCESS_BIG_DATA);
            OapiRobotSendRequest request = new OapiRobotSendRequest();
            request.setMsgtype("markdown");
            OapiRobotSendRequest.Markdown markdown = new OapiRobotSendRequest.Markdown();
            markdown.setTitle("杭州天氣監控");
            markdown.setText("#### 杭州天氣 @156xxxx8827\n" +
                    "> 9度,西北風1級,空氣良89,相對溫度73%\n\n" +
                    "> ![screenshot](https://gw.alicdn.com/tfs/TB1ut3xxbsrBKNjSZFpXXcXhFXa-846-786.png)\n"  +
                    "> ###### 10點20分發布 [天氣](http://www.thinkpage.cn/) \n");
            request.setMarkdown(markdown);

            OapiRobotSendResponse response = client.execute(request);
        } catch (Exception e) {
            e.printStackTrace();
        }
    }

    public static void main(String[] args) {
        sendMarkDown();
    }


}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章