20 - FastGPT AI 机器人接入飞书

视频教程BV1Fu4y1z7gX

视频链接BV1Fu4y1z7gX
发布日期:2024-03-05
视频时长:13:20
播放量:3.5万
所属合集:FastGPT 教程系列

视频概要

详细讲解将 FastGPT AI 机器人接入飞书的完整流程,包括飞书开放平台应用创建、事件订阅配置、消息格式处理。并演示群聊@机器人和私聊机器人两种使用方式。


知识点清单

A. 飞书机器人接入流程

完整流程:

1. 飞书开放平台创建应用
   ↓
2. 获取 App ID & App Secret
   ↓
3. 配置应用权限
   - im:message (消息读写)
   - im:message.group_at_msg (群聊@消息)
   - im:message.p2p_msg (私聊消息)
   ↓
4. 配置事件订阅
   - 订阅地址:FastGPT Webhook URL
   - 订阅事件:im.message.receive_v1
   ↓
5. FastGPT后台配置
   - 填入App ID/Secret
   - 关联知识库
   ↓
6. 发布应用版本
   ↓
7. 测试
   - 私聊:直接与机器人对话
   - 群聊:@机器人 + 问题

B. 消息格式处理

// 飞书发来的消息格式
{
  "event": {
    "message": {
      "message_type": "text",
      "content": "{\"text\": \"你好\"}",
      "chat_id": "oc_xxx",
      "chat_type": "p2p",  // 或 "group"
      "mentions": [{
        "key": "@_user_1",
        "id": {"open_id": "ou_xxx"},
        "name": "AI助手"
      }]
    },
    "sender": {
      "sender_id": {
        "open_id": "ou_xxx"
      }
    }
  }
}

// FastGPT回复飞书的消息格式
// 通过飞书API发送消息
POST https://open.feishu.cn/open-apis/im/v1/messages
Headers:
  Authorization: Bearer tenant_access_token
  Content-Type: application/json
Body:
{
  "receive_id": "oc_xxx",
  "msg_type": "text",
  "content": "{\"text\": \"AI的回答内容\"}"
}

C. 群聊 vs 私聊

场景触发方式配置要点
私聊用户直接发消息需要 p2p_msg 权限
群聊@@机器人 + 问题需要 group_at_msg 权限 + 提及事件
群聊关键字包含特定关键词需要在代码中判断关键词

D. tenant_access_token 获取

# 获取 tenant_access_token(有效期2小时)
curl -X POST https://open.feishu.cn/open-apis/auth/v3/tenant_access_token/internal \
  -H "Content-Type: application/json" \
  -d '{
    "app_id": "cli_xxx",
    "app_secret": "xxx"
  }'

# 返回
{
  "code": 0,
  "tenant_access_token": "t-xxx",
  "expire": 7200
}


常见问题

问题解答
机器人在群里不回复?检查是否@了机器人,检查权限是否配置完整
消息发送报403?检查应用权限是否已审批通过
回复内容格式错乱?注意飞书消息content字段是JSON字符串,需要转义
token过期?tenant_access_token有效期2小时,需要定时刷新
如何发送富文本?使用飞书的post消息类型,支持图文混排

学习建议

  • 飞书机器人的消息格式比企业微信复杂,注意JSON嵌套
  • 建议使用飞书官方SDK而非直接调API
  • 先在测试群验证效果,再正式发布
  • 本集与第14集有重叠,本集更侧重实战细节
返回首页