跳转到主要内容
飞书集成用于保存飞书或 Lark 自建应用的凭证、事件接收方式和运行状态。它只负责把飞书平台连接到 Xpert AI;要让消息进入某个数字专家,还必须在目标数字专家工作流中添加并发布 飞书触发器 当前 @xpert-ai/plugin-lark 使用同一个集成提供方 lark,通过 连接方式 字段区分 Webhook 和长连接。
飞书属于通信类插件,必须在租户级别安装 @xpert-ai/plugin-lark。租户级安装会注册飞书系统集成提供方、Webhook/长连接入口和飞书触发器;如果只在组织、项目或个人范围安装,后续创建集成和触发器时可能找不到对应能力。

接入方式

接入方式适合场景需要公网回调关键配置
Webhook已有稳定公网 API 地址,且需要按飞书事件回调接收消息需要App IDApp SecretVerification TokenEncrypt Key
长连接推荐模式,本地调试或不方便暴露公网回调地址不需要App IDApp SecretconnectionMode=long_connection
默认推荐使用 长连接connectionMode=long_connection)。只有在已经具备稳定公网 HTTPS 回调地址,或需要兼容 Webhook 回调部署时,再使用 Webhook。 Webhook 模式保存后会生成回调地址:
https://<your-api-domain>/api/lark/webhook/<integrationId>
长连接模式不会使用上面的回调地址,而是由 Xpert AI 服务端主动连接飞书开放平台事件通道。

准备飞书应用

  1. 登录 飞书开发者后台
  2. 创建企业自建应用,并添加 机器人 能力。
  3. 在应用凭证中复制:
    • App ID
    • App Secret
  4. 在事件与回调中选择接收方式:
    • Webhook 模式:配置请求地址和事件订阅。
    • 长连接模式:选择使用长连接接收事件。
  5. 按下面的“事件订阅”和“必需权限”开通应用能力。
  6. 发布应用版本,并把应用可用范围设置给需要使用的用户或部门。

事件订阅

事件用途
im.message.receive_v1接收单聊和群聊消息。没有这个事件时,飞书消息不会进入 Xpert AI。

必需权限

在飞书开放平台的 权限管理 中按权限名搜索并申请。申请后必须发布应用版本,并让用户或部门重新获得新版本权限。
权限用途
im:message.group_at_msg.include_bot:readonly获取群组中其他机器人和用户 @ 当前机器人的消息。
im:message.group_at_msg:readonly获取群组中用户 @ 机器人的消息。
im:message.p2p_msg:readonly读取用户发给机器人的单聊消息。
im:message.reactions:write_only发送、删除消息表情回复。
im:message:send_as_bot以机器人身份发送回复消息。缺少时,机器人可能能收到消息,但无法回复。

在 Xpert AI 创建集成

先切换到要使用飞书机器人的目标组织,再进入 设置 -> 系统集成,创建提供方为 飞书 的集成。系统集成是组织级别创建的,后续飞书触发器只能选择当前组织下已有的集成。

必填配置

配置项说明
App ID飞书/Lark 自建应用的 App ID。
App Secret飞书/Lark 自建应用的 App Secret。保存后测试会用它换取 tenant_access_token 并读取机器人信息。

Webhook 配置

配置项说明
Verification Token飞书事件订阅中配置的校验 Token。Webhook 收到 url_verification 时会校验它。
Encrypt Key飞书事件订阅中的加密密钥。启用加密事件时必须填写。
连接方式选择 Webhook(传统连接方式,稳定)。如果页面默认值是 Webhook,但计划使用推荐的长连接,请手动切换到长连接。
保存或测试集成后,复制测试结果中的 Webhook URL,填入飞书事件订阅的请求地址。Webhook 模式会拒绝长连接集成的回调请求,因此如果切换连接方式,需要同步调整飞书后台配置。

长连接配置

配置项说明
连接方式选择 长连接(支持个人电脑调试,灵活且安全)
国际版使用国际版 Lark 时勾选;不勾选时访问中国版飞书开放平台。
首选语言可选,影响错误提示和系统提示。
用户自动开通可选,允许把飞书用户自动映射或创建为平台用户。
长连接测试会先校验 App 凭证和机器人信息,再探测飞书长连接端点。新创建的长连接集成如果保存后没有自动连接,可能需要等待插件运行时刷新或重启插件服务。

测试结果怎么看

集成测试成功后会返回当前模式:
  • Webhook 模式返回 webhookUrl,用于填入飞书后台。
  • 长连接模式返回 probe.connectedprobe.stateprobe.lastError 等探测结果。
如果测试失败,优先检查 App ID、App Secret、应用版本是否已发布、机器人能力是否启用,以及应用可用范围是否包含当前测试用户。

状态与会话页签

飞书集成详情页提供扩展页签:
  • 状态:连接方式、状态、机器人用户、持有实例、最近连接时间和最近错误。
  • 用户:展示插件记录或读取到的飞书用户,可用于触发器的指定用户选择。
  • 会话:展示当前集成下的飞书会话绑定,包括会话类型、会话 ID、发送者 Open ID、数字专家 ID、对话 ID 和更新时间。
长连接模式下,状态页支持刷新、重连和断开。Webhook 模式主要依赖飞书回调可达性和事件订阅配置。

和飞书触发器配合

完成集成后,还需要:
  1. 打开目标数字专家工作流。
  2. 添加 飞书触发器
  3. 选择这个飞书集成。
  4. 配置单聊范围、群聊范围、群内回复策略、会话超时和消息汇总时间。
  5. 发布数字专家。
没有发布触发器时,飞书事件即使能到达 Xpert AI,也不会路由到目标数字专家。

常见问题

Webhook URL 校验失败

检查:
  • API_BASE_URL 是否是公网可访问的 HTTPS 地址;
  • 反向代理是否把 /api/lark/webhook/<integrationId> 转发到 Xpert API 服务;
  • 飞书后台的 Verification Token 和集成中的 Verification Token 是否一致;
  • 启用加密事件时 Encrypt Key 是否一致。

长连接一直不是 connected

检查:
  • 飞书后台是否选择长连接接收事件;
  • 服务端是否能访问飞书开放平台长连接端点;
  • App ID/App Secret 是否属于同一个应用;
  • 应用是否已发布且机器人能力已启用。

选择器无法列出群聊或用户

群聊选择器调用飞书群聊列表,用户选择器调用通讯录部门用户列表。请补齐飞书应用权限并重新发布应用。