飞书发送通知到群并且@全体人员

77 阅读1分钟

打开飞书客户端,在指定群组 > 设置 > 群机器人 > 添加机器人 内添加应用机器人(注意不是自定义机器人是我们的企业自建应用)。

image.png

为群组添加机器人时,没有找到我在开发者后台创建的应用?

:你需为你的应用添加机器人能力。添加机器人能力后,该应用才支持被添加到群组。

通过下面这个接口可以获取到群id即chat_id image.png

发送消息并且@全体人员 image.png

关键代码:

//获取TenantToken
async function getTenantToken() {
    const internalRes = await axios.post(
        "https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal",
        {
            app_id: serverConfig.config.appId,
            app_secret: serverConfig.config.appSecret,
        },
        { headers: { "Content-Type": "application/json" } }
    );

    if (!internalRes.data) {
        ctx.body = serverUtil.failResponse("tenant_access_token request error");
        return;
    }
    if (internalRes.data.code != 0) {
        ctx.body = serverUtil.failResponse(
            `tenant_access_token request error: ${internalRes.data.msg}`
        );
        return;
    }

    console.log(
        `接入服务方第③ 步: 获得颁发的自建应用授权凭证tenant_access_token`,
        internalRes.data.tenant_access_token
    );
    const tenant_access_token = internalRes.data.tenant_access_token || "";
    return tenant_access_token;
}

//发送群通知并且艾特全体人员
async function sendFSGroupChatMsg() {

    const tenant_access_token = await getTenantToken()

    const content = {
        text: "<at user_id=\"all\">所有人</at> 这是一条@全体成员的群聊消息"
    };

    return client.im.v1.message.create({
        params: {
            receive_id_type: 'chat_id',
        },
        data: {
            receive_id: "oc_1dd8cb73d7d88635677217f40b1ce6ea", //群聊id
            msg_type: 'text',
            content: JSON.stringify(content),
        },
    },
        lark.withTenantToken(tenant_access_token)
    )
}

sendFSGroupChatMsg()

效果:

image.png