Data Agent 集成飞书

更新时间:
复制 MD 格式

Data Agent 支持接入飞书机器人,配置完成后,可通过飞书群聊或私聊直接与 Data Agent 实例交互,随时获取数据分析结果。

功能概述

Data Agent 是 DataWorks 平台的 AI 智能体,内置数据集成、数据开发、数据治理、数据安全等 Skills,支持通过自然语言完成数据同步任务创建、SQL 生成与调试、数据质量排查、血缘关系查询等操作。IM 频道功能将 Data Agent 实例以机器人形式接入钉钉、飞书、企业微信等即时通讯工具。接入后,用户无需登录 DataWorks 控制台,直接在日常沟通工具中 @机器人 即可调用 Data Agent 的全部能力,在对话中完成数据开发与治理任务。

前提条件

  • 已创建 Data Agent 实例,且实例处于运行状态。

  • Data Agent 实例已绑定资源组(测试网络连通性的前提条件)。

  • 已具备飞书开放平台企业管理员或应用管理员权限。

步骤一:创建飞书应用并获取凭证

  1. 访问飞书开放平台,单击创建企业自建应用,填写应用名称和描述,选择应用图标,单击确定

  2. 在左侧导航栏单击凭证与基础信息,复制 App ID(格式如 cli_xxx)和 App Secret,后续配置 Data Agent 时需使用。

  3. 在左侧导航栏单击权限管理,单击批量导入/导出权限,粘贴以下 JSON 配置,单击下一步,确认新增权限,单击申请开通

    {
      "scopes": {
        "tenant": [
          "contact:contact.base:readonly",
          "docx:document:readonly",
          "im:chat:readonly",
          "im:chat:update",
          "im:message.group_at_msg:readonly",
          "im:message.p2p_msg:readonly",
          "im:message.pins:read",
          "im:message.pins:write_only",
          "im:message.reactions:read",
          "im:message.reactions:write_only",
          "im:message:readonly",
          "im:message:recall",
          "im:message:send_as_bot",
          "im:message:send_multi_users",
          "im:message:send_sys_msg",
          "im:message:update",
          "im:resource",
          "application:application:self_manage",
          "cardkit:card:write",
          "cardkit:card:read"
        ],
        "user": [
          "contact:user.basic_profile:readonly",
          "contact:user.employee_id:readonly",
          "offline_access",
          "base:app:copy",
          "base:field:create",
          "base:field:delete",
          "base:field:read",
          "base:field:update",
          "base:record:create",
          "base:record:delete",
          "base:record:retrieve",
          "base:record:update",
          "base:table:create",
          "base:table:delete",
          "base:table:read",
          "base:table:update",
          "base:view:read",
          "base:view:write_only",
          "base:app:create",
          "base:app:update",
          "base:app:read",
          "board:whiteboard:node:create",
          "board:whiteboard:node:read",
          "calendar:calendar:read",
          "calendar:calendar.event:create",
          "calendar:calendar.event:delete",
          "calendar:calendar.event:read",
          "calendar:calendar.event:reply",
          "calendar:calendar.event:update",
          "calendar:calendar.free_busy:read",
          "contact:contact.base:readonly",
          "contact:user.base:readonly",
          "contact:user:search",
          "docs:document.comment:create",
          "docs:document.comment:read",
          "docs:document.comment:update",
          "docs:document.media:download",
          "docs:document:copy",
          "docx:document:create",
          "docx:document:readonly",
          "docx:document:write_only",
          "drive:drive.metadata:readonly",
          "drive:file:download",
          "drive:file:upload",
          "im:chat.members:read",
          "im:chat:read",
          "im:message",
          "im:message.group_msg:get_as_user",
          "im:message.p2p_msg:get_as_user",
          "im:message:readonly",
          "search:docs:read",
          "search:message",
          "space:document:delete",
          "space:document:move",
          "space:document:retrieve",
          "task:comment:read",
          "task:comment:write",
          "task:task:read",
          "task:task:write",
          "task:task:writeonly",
          "task:tasklist:read",
          "task:tasklist:write",
          "wiki:node:copy",
          "wiki:node:create",
          "wiki:node:move",
          "wiki:node:read",
          "wiki:node:retrieve",
          "wiki:space:read",
          "wiki:space:retrieve",
          "wiki:space:write_only"
        ]
      }
    }
  4. 在左侧导航栏单击添加应用能力,选择按能力添加页签,找到机器人卡片,单击添加

  5. 在左侧导航栏单击事件与回调,切换到事件配置页签,单击订阅方式,选择使用长连接接收事件,单击保存

  6. 事件配置页面,单击添加事件,选择应用身份订阅页签,搜索"消息"并勾选接收消息消息被reaction消息被取消reaction三个事件,单击确认添加

  7. 在左侧导航栏单击版本管理与发布,创建版本,填写应用版本号更新说明,单击保存,提交审核并发布。

步骤二:测试网络连通性

配置飞书 IM 频道前,需先确保 Data Agent 实例与飞书之间的网络已连通。

  1. 登录DataWorks 控制台,单击左侧导航栏Data Agent,进入 Data Agent 应用后,打开目标实例。

  2. 单击左侧导航栏IM 频道

    IM 频道页面展示钉钉、飞书、企业微信三个通道卡片,每张卡片显示当前的配置状态、网络状态和启用状态。

  3. 飞书通道卡片上,单击测试网络连通性,验证 Data Agent 与飞书之间的网络连接。

    • 若通道卡片显示已连通状态,表示网络已就绪,可直接进入下一步配置 IM 频道。

    • 若通道卡片显示未连通状态,需继续执行下一步开启通道网络。

  4. (仅在连通性测试失败时执行)单击开启通道网络

    Data Agent 提供最小化打通(推荐)方案:仅为未联通的通道配置 PrivateZone 和私网连接(PrivateLink),影响范围最小。

    说明

    最小化打通属于 VPC 级网络变更:打通后,同一 VPC 下的其他实例也将具备访问对应通道域名的网络能力。执行前请确认该 VPC 内的实例可以共享此网络访问范围。

  5. 交换机可用区下拉框中为各可用区选择对应的交换机(vSwitch),然后单击一键打通。系统将自动配置 PrivateZone 解析和私网连接,等待约 1~5 分钟完成网络打通。

    若需更精细地控制网络配置,可单击处理网络跳转至资源组网络配置页面手动操作。单击重新检测可随时重新测试各通道的连通性。

  6. 执行完成后,系统自动重测连通性。确认通道卡片显示已连通状态后,进入下一步配置 IM 频道。

步骤三:配置 Data Agent 飞书 IM 频道

网络连通后,配置飞书应用凭证以建立 Data Agent 与飞书的连接。

  1. 飞书通道卡片上,单击配置,在弹出的 IM 频道配置对话框中填写以下参数:

    参数

    说明

    App ID

    填写飞书开放平台应用的 App ID(步骤一获取)。

    App Secret

    填写飞书开放平台应用的 App Secret(步骤一获取)。

  2. 单击高级配置展开更多设置项,按需配置以下参数:

    类别

    参数

    说明

    会话管理

    会话隔离方式

    控制不同用户或群聊之间的对话上下文是否隔离。可选值:

    • 按用户隔离:每个用户拥有独立的对话上下文,互不影响。

    • 按群/话题隔离:同一群聊或话题内的消息进入同一个对话,适合群内协作场景。

    • 全部共享:所有用户共享同一个对话上下文。

    权限管理

    用户访问权限

    控制哪些用户可以与机器人交互。可选值:

    • 所有人可用:组织内所有成员均可使用。

    • 仅允许名单:仅允许名单中的用户使用。

    • 配对:未配对的用户首次向机器人发消息时会收到一个配对码,管理员批准后该用户即可使用;已在允许名单中的用户无需配对。

    允许群聊

    开启后,机器人仅在群聊中被 @ 或收到回复时响应。开启后可进一步配置可响应的群聊范围:

    • 所有群聊:机器人可在所有群聊中响应。

    • 指定群聊:仅在指定的群聊中响应。

    消息处理

    忙碌时处理方式

    当机器人正在处理消息时收到新消息的处理策略。可选值:

    • 打断重定向:收到新消息时取消当前任务,并按新消息继续。

    • 收集合并:将新消息与当前任务合并处理。

    • 排队处理:新消息排队等待,按顺序逐条处理。

    群聊上下文回填

    填写正整数后,未 @ 机器人的授权群消息会缓存到下一次触发时作为上下文回填。留空或填写 0 表示关闭此功能。

    边生成边发送

    开启后,机器人在回复过程中按段落发送多条短消息,而不是等待最终长回复。适用于需要快速反馈的场景。默认关闭。

  3. 配置完成后,单击保存

步骤四:测试飞书机器人

配置完成后,通过飞书添加机器人进行对话测试。

群聊测试

  1. 进入飞书群设置页面,单击群机器人 > 添加机器人

  2. 搜索目标机器人名称,选中要添加的机器人,单击添加

  3. 群聊内 @机器人 发送消息。机器人正常响应时,将以流式卡片形式返回数据分析结果。若机器人未响应,检查通道卡片的启用状态和网络连通性,并确认应用权限配置是否完整。

私聊测试

  1. 搜索机器人名称,单击机器人头像进入私聊页面。

  2. 直接向机器人发送消息即可开始对话。机器人正常响应时,将以流式卡片形式返回数据分析结果。若机器人未响应,检查通道卡片的启用状态和网络连通性,并确认应用权限配置是否完整。

若需将机器人用于外部群,请参考飞书文档机器人支持外部群和外部用户单聊