首页 > 其他分享 >即时消息告警工具(二)飞书

即时消息告警工具(二)飞书

时间:2023-04-23 19:48:32浏览次数:47  
标签:即时消息 String 工具 access token 告警 open id tenant

飞书告警

登陆飞书移动端后,点击 "添加账号"

现在登陆的是管理员账号,账号只有审批权限,没有创建应用的权限

我们要切换成能创建应用的账号的权限

登陆飞书Web端

1.https://open.feishu.cn/app
飞书后台,可以创建应用,但是需要管理员审批

2.https://va8ocx82fwg.feishu.cn/admin/appCenter/audit
飞书后台,可以审批应用,但是没办法创建应用

授权的时候 选择 "授权登陆全部账号"
这样就能在一个浏览器上同时登陆"管理员审批账号"和"创建应用账号"

飞书Web端创建应用 https://open.feishu.cn/app

申请应用的权限

这下面有多页,记得最下面翻页,我自己就是管理员,所以权限值直接通过的

创建版本和申请发布应用

飞书Web端审批应用  https://va8ocx82fwg.feishu.cn/admin/appCenter/audit

记录App ID和AppSecret (后续很重要)

调试代码

添加依赖
添加依赖
        <dependency>
            <groupId>com.larksuite.oapi</groupId>
            <artifactId>oapi-sdk</artifactId>
            <version>2.0.18</version>
        </dependency>

如果无法获取依赖,继续添加
    <repositories>
        <repository>
            <id>Central Repository</id>
            <url>https://repo1.maven.org/maven2/</url>
        </repository>
    </repositories>
调试代码
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.OutputStream;
import java.net.HttpURLConnection;
import java.net.URL;
import org.json.JSONObject;
import java.util.UUID;


public class SendMessageFeishu {

    public static JSONObject http_post_value_json(String url,String head,String requestBody,String errcode,String errcode_value) throws Exception {
        HttpURLConnection con = (HttpURLConnection) new URL(url).openConnection();
        con.setRequestMethod("POST");
        con.setRequestProperty("Content-Type", "application/json");
        JSONObject head_json_object = new JSONObject(head);
        for (String key :head_json_object.keySet()){
            con.setRequestProperty(key, head_json_object.getString(key));
        }
        con.setDoOutput(true);

        OutputStream os = con.getOutputStream();
        os.write(requestBody.getBytes());
        os.flush();
        os.close();

        int responseCode = con.getResponseCode();
        BufferedReader br = new BufferedReader(new InputStreamReader(con.getInputStream()));
        String response = "";
        String line;
        while ((line = br.readLine()) != null) {
            response += line;
        }
        br.close();

        if(responseCode == 200){
            JSONObject jsonObject = new JSONObject(response);
            if(jsonObject.getString(errcode).equals(errcode_value)){
                return jsonObject;
            }
        }
        System.out.println(response);
        System.out.println("调用失败");
        return new JSONObject();
    }

    public static void main(String arg[]) throws Exception {
        String tenant_access_token_url = "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal";
        String tenant_access_token_header = "{}";
        String tenant_access_token_requestBody = "{\"app_id\":\"替换成APPID\",\"app_secret\":\"替换成AppSecret\"}";
        String tenant_access_token = http_post_value_json(tenant_access_token_url,tenant_access_token_header,tenant_access_token_requestBody,"code","0").getString("tenant_access_token");
        System.out.println("tenant_access_token:"+tenant_access_token);


        String get_id_url = "https://open.feishu.cn/open-apis/contact/v3/users/batch_get_id?user_id_type=open_id";
        String get_id_header = "{\"Authorization\":\"Bearer "+tenant_access_token+"\"}";
        String get_id_requestBody = "{\"mobiles\":[\"通过电话查找用户ID\"]}";
        String user_id = http_post_value_json(get_id_url,get_id_header,get_id_requestBody,"code","0")
                .getJSONObject("data").getJSONArray("user_list").getJSONObject(0).getString("user_id");
        System.out.println("user_id:"+user_id);


        String send_message_url = "https://open.feishu.cn/open-apis/im/v1/messages?receive_id_type=open_id";
        String send_message_header = "{\"Authorization\":\"Bearer "+tenant_access_token+"\"}";
        String send_message_requestBody = "{\"content\": \"{\\\"text\\\":\\\"飞书测试消息\\\"}\",\"msg_type\": \"text\"," +
                "\"receive_id\": \""+user_id+"\"," + "\"uuid\": \""+UUID.randomUUID()+"\"}";
//        System.out.println(send_message_requestBody);
        System.out.println(http_post_value_json(send_message_url,send_message_header,send_message_requestBody,"code","0").get("data"));
        System.out.println("发送成功");

    }
}

标签:即时消息,String,工具,access,token,告警,open,id,tenant
From: https://www.cnblogs.com/wuxiaolong4/p/17347490.html

相关文章

  • 一步搞定IP地址查询:这个在线工具帮你快速掌握设备的位置信息!
    前言  今天分享一个免费的在线工具来查询IP地址所在的地理位置。可以通过IP地址所属的网络运营商和其他相关信息来确定设备的位置,包括国家、地区、城市和经纬度等信息。Ip-API官网地址:https://ip-api.com/使用示例  该工具除了提供界面查询,还贴心的提供了API。并且......
  • 原型设计工具比较及实践
    目录一、原型设计工具比较1.墨刀适用领域优点缺点2.Axure适用领域优点缺点3.Mockplus适用领域优点缺点二、原型设计1.主题名称2.功能3.界面设计考虑因素4.切换界面5.界面切换流程图一、原型设计工具比较1.墨刀适用领域首先是国产的,是北京一家公司设计的。墨刀是一款在线原......
  • 原型设计工具比较及实践
    目录一、原型设计工具比较及实践1.墨刀2.Axure3.Mockplus二、原型设计1.主题2.功能3.界面设计考虑因素4.界面5.界面切换流程说明一、原型设计工具比较及实践1.墨刀简介:墨刀致力于将更多的时间用于思考,快速的完成产品设计。内置丰富的组件库和图标库,小白也能轻松掌握,简单......
  • 原型设计工具比较及实验
    目录原型设计工具比较1.墨刀适用领域优点缺点2.Axure适用领域优点缺点3.Mockplus适用领域优点缺点原型设计主题名称功能界面设计考虑因素切换界面1登陆页面2主页面(照片)3主页面(相册)4上传照片5个人中心切换界面流程说明原型设计工具比较1.墨刀适用领域墨刀是一款在线原型设计与协......
  • 性能测试工具Locust和JMeter比较-及相关书籍下载
    ApacheJMeter™和Locust都是是最受欢迎的性能测试工具。JMeter和Locust-简介JMeter是久经考验的性能框架之一,其第一个版本大约在20年前发布。它是用纯Java语言编写的。最初,JMeter开发用于执行Web和FTP应用程序的负载测试。但是,现在它允许测试几乎所有应用程序和协议,使用户......
  • 开发工具的激活
    IntelliJIDEA/Pycharm激活请先下载安装包及破解包:链接:https://pan.baidu.com/s/1JGpDTTF7MBI-IWPXRkNVPg?pwd=zhnn提取码:zhnn--来自百度网盘超级会员V6的分享1、本激活方法适用于2022、2021、2020、2019、2018全系列版本;;2、使用前请仔细阅读下面的图文教程,按照教程一......
  • 原型设计工具比较及实践
    目录一、原型设计工具比较1.墨刀2.Axure3.Mockplus二、原型设计1.主题名称2.功能3.界面设计考虑因素4.切换界面5.界面切换流程一、原型设计工具比较1.墨刀适用领域    墨刀是一款原型设计工具,借助墨刀可以简单的进行原型设计,它具有多人协作功能,能够多人合作,同时进......
  • 有什么好用的远程工具吗
    沟通在任何类型的工作中都扮演着重要的角色。但当谈到远程工作时,这一点就更为重要。因此,您的组织必须找到可以让您的团队保持一致的工具。在某些方面,项目管理扮演着类似的角色。您会注意到,下面的大多数工具都会直接影响您的公司如何沟通和管理他们的工作。远程办公,需要好的远程......
  • RM1135固件下载方法,瑞昱RM1135使用量产工具开卡软件下载
    最近很多人问RayMxRM1135是什么主控,这里给大家一个明确的回复,RM1135=RTS5735,是瑞昱出品的一款主控。而目前只有几乎没有这款主控的开卡软件!只在网上找到一家下载量产部落网站提供开卡软件下载,RealtekRTS5735/RayMXRM1135SATASSDMPTool产品简介:RM1135作为一颗高集成度、低功......
  • 混沌实施工具ChaosBlade实践
    项目介绍ChaosBlade是阿里巴巴开源的混沌工程原理和混沌实验模型的实验注入工具。ChaosBlade使用比较简单,而且支持丰富的实验场景,场景包括:基础资源:比如CPU、内存、网络、磁盘、进程等实验场景;Java应用:比如数据库、缓存、消息、JVM本身、微服务等,还可以指定任意类方法注入各种......