飞书推送消息

功能介绍

企业存在给特定群组自动推送消息的场景,例如,推送监控报警、运营内容等。在该类场景下,你可以在群组中添加自定义机器人,自定义机器人默认提供 webhook,通过服务端调用 webhook 地址,即可将外部系统的消息通知即时推送到群组中。

实现起来也非常简单,就是发一下 http 请求就可以了。

在群组中添加自定义机器人

操作步骤

  • 进入目标群组,在群组右上角点击更多按钮,并点击 设置

img

  • 在右侧 设置 界面,点击 群机器人

img

  • 群机器人 界面点击 添加机器人

添加机器人 对话框,找到 自定义机器人,并 添加

img

  • 设置自定义机器人的名称与描述,并点击 添加

img

获取自定义机器人的 webhook 地址,并点击 完成

成功添加机器人后,查看机器人对应的 webhook 地址。地址格式如下:

https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxxxxxxxxxxx

img

  • 测试调用自定义机器人的 webhook 地址,向所在群组发送消息。

用任意方式向 webhook 地址发起一个 HTTP POST 请求。

通过服务端 HTTP POST 请求方式调用 webhook 地址。

以 curl 指令为例,请求示例如下。

curl -X POST -H "Content-Type: application/json" -d '{"msg_type":"text","content":{"text":"request example"}}'  https://open.feishu.cn/open-apis/bot/v2/hook/****

示例命令说明:

- 请求方式:POST
- 请求头:Content-Type: application/json
- 请求体: {"msg_type":"text","content":{"text":"request example"}}
- webhook 地址:https://open.feishu.cn/open-apis/bot/v2/hook/**** 为示例值,你在实际调用时需要替换为自定义机器人真实的 webhook 地址。
  • 也可以用 postman 调用

示例如下:

代码

如下:

OkHttpUtil 是一个发送http请求的工具类,

详情见: https://www.cnblogs.com/expiator/p/17357647.html

OkHttp 也可以换成其他的 http 工具类。

import com.alibaba.fastjson.JSONObject;
import lombok.extern.slf4j.Slf4j;
import okhttp3.OkHttpClient;


@Slf4j
public class MsgUtil {

    public static String sendMsg(OkHttpClient okHttpClient, String url, String content) {
        JSONObject contentJson = MsgUtil.getContentJson(content);
        return OkHttpUtil.post(okHttpClient, url, contentJson);
    }

    /**
     * 发信息
     * @param url
     * @param content
     * @return
     */
    public static String sendMsg(String url, String content) {
        JSONObject contentJson = MsgUtil.getContentJson(content);
        return OkHttpUtil.post(url, contentJson);
    }

    /**
     * 发送的消息内容
     * @param content
     * @return
     */
    public static JSONObject getContentJson(String content) {
        JSONObject json = new JSONObject();
        json.put("msg_type", "text");
        JSONObject txtJson = new JSONObject();
        txtJson.put("text", content);
        json.put("content", txtJson);
        return json;
    }



}

官方文档

开发文档 - 飞书开放平台

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
对于 Python 飞书消息推送,你可以使用飞书开放平台提供的 API 来实现。下面是一个简单的示例: 首先,你需要在飞书开放平台创建一个应用并获取到相应的 App ID 和 App Secret。 然后,你可以使用 Python 的 requests 库来发送 HTTP 请求,调用飞书开放平台的 API。 ```python import requests def send_feishu_message(app_id, app_secret, user_id, message): # 获取 access_token token_url = f"https://open.feishu.cn/open-apis/auth/v3/app_access_token" token_payload = { "app_id": app_id, "app_secret": app_secret } token_response = requests.post(token_url, json=token_payload) access_token = token_response.json()["app_access_token"] # 发送消息 message_url = f"https://open.feishu.cn/open-apis/message/v4/send/" message_payload = { "msg_type": "text", "content": { "text": message }, "user_id": user_id } headers = { "Authorization": f"Bearer {access_token}" } message_response = requests.post(message_url, json=message_payload, headers=headers) return message_response.status_code == 200 # 使用示例 app_id = "your_app_id" app_secret = "your_app_secret" user_id = "user_id_to_receive_message" message = "Hello, World!" send_feishu_message(app_id, app_secret, user_id, message) ``` 在上述示例中,`send_feishu_message` 函数接受应用的 App ID、App Secret、接收消息的用户 ID 和要发送的消息作为参数。函数内部通过调用飞书开放平台的 API 获取 access_token,并使用 access_token 发送消息。 需要注意的是,该示例只是一个简单的推送文本消息的例子。如果你需要发送其他类型的消息,可以参考飞书开放平台的文档,调用相应的 API 进行操作。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值