美文网首页
钉钉自定义机器人发送消息到钉钉群

钉钉自定义机器人发送消息到钉钉群

作者: Vchar_Fred | 来源:发表于2019-07-24 22:37 被阅读0次

当需要将系统的一些预警等信息推送到钉钉群时,我们可以通过开启自定义机器人来通过API接口推送钉钉消息。

注意:使用手机添加机器人后,需要登录PC版钉钉获取相关的链接
不使用钉钉提供的SDK也可以,不过需要自己去实现请求(即自己组装相关参数发送POST请求)。

官方提供的的SDK包有其他依赖,修改版已将其他移除,同时需要添加日志实现的jar包,项目已将日志切换为slf4j-api,使用时请引入日志实现包如log4j、logback等日志框架

项目编译版本:taobao-sdk-java-auto_1479188381469-20190719

使用说明

当前自定义机器人支持文本 (text)、链接 (link)、markdown(markdown)、ActionCard、FeedCard消息类型;

注意:每个机器人每分钟最多发送20条。消息发送太频繁会严重影响群成员的使用体验,大量发消息的场景 (譬如系统监控报警) 可以将这些信息进行整合,通过markdown消息以摘要的形式发送到群里。

发送普通消息

@Test
public void textMessage() throws ApiException {
    //这个是通过钉钉获取的机器人的连接,需要PC版才可以
    DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?access_token=2324980345ufnklasjnfaiopuw3rnq9o32874yq29035ryhvq2");
    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.setIsAtAll("true");//设置@所有的人
    request.setAt(at);
    OapiRobotSendResponse response = client.execute(request);
    System.out.println(response.getErrcode());
}

发送link消息

@Test
public void linkMessage() throws ApiException {
    DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?access_token=2324980345ufnklasjnfaiopuw3rnq9o32874yq29035ryhvq2");
    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("这个即将发布的新版本,创始人陈航(花名“无招”)称它为“红树林”。\n" +
            "而在此之前,每当面临重大升级,产品经理们都会取一个应景的代号,这一次,为什么是“红树林");
    request.setLink(link);

    OapiRobotSendRequest.At at = new OapiRobotSendRequest.At();
    at.setAtMobiles(Arrays.asList("13672384534"));//设置@那些人,使用的是手机号
    request.setAt(at);
    OapiRobotSendResponse response = client.execute(request);
    System.out.println(response.getErrcode());
}

发送markdown消息

@Test
public void markdownMessage() throws ApiException {
    DingTalkClient client = new DefaultDingTalkClient("https://oapi.dingtalk.com/robot/send?access_token=2324980345ufnklasjnfaiopuw3rnq9o32874yq29035ryhvq2");
    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://img.haomeiwen.com/i8021450/464743a21e26a039.png?imageMogr2/auto-orient/strip%7CimageView2/2/w/1240)\n"  +
            "> ###### 10点20分发布 [天气](http://www.thinkpage.cn/) \n");
    request.setMarkdown(markdown);
    OapiRobotSendResponse response = client.execute(request);
    System.out.println(response.getErrcode());
    System.out.println(response.getErrmsg());
}

相关文章

  • Python_钉钉机器人

    一、打开钉钉群,添加自定义机器人,记住创建机器人的webhook即可。二、发送消息到钉钉群: 发送的消息类型参见钉...

  • python实现钉钉群消息推送

    Python实现钉钉群消息推送 对于某些自动化任务执行结果反馈,使用钉钉机器人消息替换繁琐的邮件发送方式使用钉钉机...

  • 钉钉自定义机器人发送消息到钉钉群

    当需要将系统的一些预警等信息推送到钉钉群时,我们可以通过开启自定义机器人来通过API接口推送钉钉消息。 钉钉开放平...

  • 121-配置zabbix通过钉钉机器人报警

    钉钉机器人的设置,参见《116-钉钉机器人》zabbix服务器监控到异常,可以通过各种方式发送报警消息。配置步骤如...

  • 钉钉机器人消息Python封装(开源)

    一、钉钉自定义机器人介绍 钉钉机器人是钉钉群的一个高级扩展功能,但使用起来却非常简单,只需要注册一个钉钉账号,就可...

  • android 发送消息到钉钉群

    1. 钉钉群添加机器人, 具体步骤参考 官网链接[https://developers.dingtalk.com/...

  • python钉钉机器人发消息

    用于钉钉群,定时发消息之类的 1、创建钉钉机器人 2、创建机器人 3、创建成功,拿到webhook 4、创建一个钉...

  • App Store审核结果-发消息提醒到钉钉群

    目的 在App被App Store审核通过或者被拒绝时,及时发送推送消息到钉钉群,提醒开发者及时跟进。 原理 钉钉...

  • GitLab-代码审核

    设置钉钉 GitLab 机器人 打开钉钉,在需要配置 GitLab 机器人的群中,点击【群设置】→【智能群助手】→...

  • Rboot 文档--钉钉消息转接器

    简介 钉钉提供了自定义的webhook机器人和企业机器人,钉钉消息转接器就是通过这两个功能实现的。 请确保你已经了...

网友评论

      本文标题:钉钉自定义机器人发送消息到钉钉群

      本文链接:https://www.haomeiwen.com/subject/mjdqrctx.html