Springboot 集成 飞书群消息

前情概要

公司项目想要加入一个系统错误推送功能,方便线上项目运维,可选择的消息通知渠道很多,比如邮箱、短信、微信、飞书等等,但是邮箱每天有发送数量上限,而且还有其他必须要使用邮箱发送的功能,所以为了不影响必要功能的运行,邮箱不可取,短信需要收费,微信……好吧,微信不是公司的主要使用工具,所以选来选去最后选中了飞书。

执行步骤

1、添加飞书企业应用

第一步

创建企业自建应用
飞书开放平台 → 管理员后台 → 创建应用 → 类型选“企业自建”。

第二步

添加“机器人”能力
应用详情 → 添加能力 → 勾选“机器人”→ 保存。

第三步

获取凭证信息(App Id和App Secret)
基础信息-凭证与技术信息-凭证应用

第四步

配置机器人
在 PC 端把该机器人拉进群 → 群设置 → 群机器人 → 点击机器人 → 复制 “Webhook 地址”

2、java配置

### 将上一步复制的信息配置到 .yaml文件中
feishu:
  appId: ***
  appSecret: ***
  errorWebhook: ***

3、调用

public boolean sendNotification(Throwable throwable, ErrorContext context) {
        if (!isAvailable()) {
            return false;
        }
        try {
            String content = buildContent(throwable, context);
            
            Map<String, Object> contentMap = new HashMap<>();
            contentMap.put("text", content);

            Map<String, Object> body = new HashMap<>();
            body.put("msg_type", "text");
            body.put("content", contentMap);

            restTemplate.postForObject(webhookUrl, body, String.class);
            log.info("Successfully sent error notification via Feishu");
            return true;
        } catch (Exception e) {
            log.error("Error sending notification via Feishu channel", e);
            return false;
        }
    }

遇见的问题

  1. 发送消息报403
    原因:群里没有机器人
    解决方案:拉机器人进群
  2. 部分ip调用报报错
    原因:公司开了“IP 白名单”
    解决方案:把服务器出口 IP 填到应用后台“安全设置-IP 白名单”。
posted on 2025-09-12 17:15  小七mxs  阅读(41)  评论(0)    收藏  举报