视频教程: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集有重叠,本集更侧重实战细节