飞书机器人是什么?
飞书机器人(Bot)可以被理解为一个在飞书工作环境中运行的自动化程序或智能助手。它不是一个物理设备,而是一个通过编程实现特定功能的应用。
它主要存在于飞书的聊天界面中,可以接收信息、发送信息,甚至与用户进行互动,执行预设的任务。
核心功能:
-
发送消息和通知: 这是机器人最基础也最常见的功能。它可以定时或根据特定事件触发,向个人、群聊或特定主题发送文本、链接、图片、文件等信息。这非常适合用于发送系统告警、数据报告、新闻摘要、会议提醒等。
-
接收消息和指令: 机器人可以监听聊天中的特定指令(如 @机器人名称 + 命令),并根据这些指令执行相应的操作。这使得用户可以通过聊天界面与外部系统交互,例如查询某个数据、触发某个流程等。
-
互动卡片 (Interactive Cards): 这是飞书机器人提供的一种强大的交互方式。机器人可以发送包含按钮、表单、下拉菜单等元素的富媒体消息。用户无需离开飞书,就可以直接在卡片上完成审批、填写信息、投票、提交任务等操作,极大地提升了工作效率和体验。
-
响应事件: 机器人可以订阅并响应飞书中的各种事件,比如用户创建了某个文档、更新了某个表格数据、加入了某个群聊等。这使得机器人能够感知工作环境的变化并做出反应。
常见的类型:
-
Webhook 机器人: 这是最简单的一种机器人,主要用于接收外部系统推送的信息。你只需要为群聊添加一个 Webhook 机器人,它会提供一个特定的网址(Webhook URL),外部系统将信息发送到这个网址,机器人就会在群聊中展示这些信息。它通常是单向的,只能接收并转发消息,无法主动接收用户指令或发送互动卡片(除非结合其他开发能力)。
-
开放平台应用机器人: 这是一种更强大、功能更全面的机器人,它是飞书开放平台应用的一部分。这种机器人不仅可以发送和接收消息,还能利用飞书开放平台的各种 API(应用程序接口)与飞书的其他功能模块(如文档、表格、日历、通讯录等)进行深度集成,实现更复杂的业务流程和交互。
-
第三方应用机器人: 飞书应用商店中集成了许多由第三方服务商开发的工具和应用,其中很多都包含机器人功能,用于在飞书中提供该应用的核心服务通知或交互入口(例如项目管理、客服系统、数据报表等应用的机器人)。
为什么要使用飞书机器人?
使用飞书机器人可以带来诸多好处,主要集中在提升效率、优化协作和增强信息触达能力上。
核心价值:
-
自动化重复性任务: 许多日常工作包含重复性的通知、提醒、数据收集等任务。机器人可以完全接管这些任务,例如自动发送每日站会提醒、收集成员日报、定时推送系统健康报告等,将人力从繁琐的工作中解放出来。
-
及时获取重要信息: 将其他系统的关键告警、异常通知、重要事件(如服务器宕机、订单异常、紧急工单)通过机器人直接发送到飞书群聊或个人,确保团队成员能够第一时间感知并响应,避免信息延迟造成的损失。
-
减少上下文切换: 用户无需频繁切换应用来查看其他系统的信息或执行简单操作。机器人将这些功能集成到飞书聊天界面中,让用户可以在同一个平台内完成更多工作,保持专注。
-
构建流畅的业务流程: 通过互动卡片,机器人可以将业务流程的关键节点搬到飞书内完成。例如,将审批流程中的审批环节通过机器人发送到审批人的飞书,审批人直接点击同意或拒绝按钮即可完成,大大加快了审批效率。
-
集中信息: 将分散在不同工具或系统中的信息通过机器人汇聚到飞书,方便团队成员集中查看和讨论,打破信息孤岛。
-
增强团队协作: 机器人可以作为团队协作的辅助工具,例如用于发起快速投票、进行团队签到、共享文件链接等,提高团队互动的便捷性。
总而言之,使用飞书机器人,就是为了让信息流动更高效、工作流程更顺畅、团队协作更便捷,最终提升整体的工作效率和体验。
在哪里获取和使用飞书机器人?
获取和使用飞书机器人有不同的途径,取决于你是想使用现成的还是自己构建。
获取途径:
-
飞书应用目录 (App Directory): 如果你需要的是一个通用的功能,比如项目管理、客服、OA审批、人力资源等领域的工具,可以先去飞书应用目录查找。许多第三方应用都提供了与飞书集成的机器人功能,安装这些应用通常就会自动在飞书中提供对应的机器人能力。
-
飞书开发者平台 (Developer Console): 如果你的需求是内部特定的业务流程自动化或与公司内部系统集成,你需要进入飞书开发者平台创建一个自定义应用。在创建应用的过程中,你可以选择并配置应用的机器人能力。
-
群设置 (for Webhook Bots): 对于最简单的 Webhook 机器人,你不需要在开发者平台创建完整应用。直接在飞书的群聊设置中,找到“机器人”选项,选择“添加机器人”,然后选择“自定义机器人”即可创建一个 Webhook 地址。
使用场景 (在哪里用):
-
群聊: 这是机器人最常见的使用场景。机器人可以被添加到项目群、部门群、讨论组等,向群内所有成员发送通知、接收成员指令、展示互动卡片。
-
个人私聊: 部分功能强大的机器人或通过特定配置后,也可以向个人发送消息,实现一对一的通知或助手服务。例如,个人待办提醒、私密告警通知等。
-
集成到其他飞书功能: 虽然机器人本身主要在聊天中体现,但通过开放平台应用,机器人的能力可以与飞书文档、表格、日历、通讯录等其他功能模块的数据或事件关联起来,实现更深度的集成。例如,机器人收到审批通知,审批通过后自动更新飞书表格中的状态。
学习资源 (哪里学):
-
飞书开放平台官方文档: 这是最权威的学习资源,提供了详细的机器人开发指南、API 文档、互动卡片构建工具等。如果你打算自己构建机器人,这是必读的。
-
飞书开发者社区: 在社区中,你可以与其他开发者交流经验、提问、寻找解决方案。
-
第三方教程和案例: 许多开发者或公司会分享他们构建飞书机器人的实践经验和代码示例,可以在博客或技术社区查找。
构建或使用飞书机器人需要多少成本?
飞书机器人的成本并非一个单一数值,它取决于你选择的使用方式和机器人类型。
成本构成:
-
Webhook 机器人:
财务成本: 几乎为零。飞书提供创建 Webhook 机器人是免费的。你可能只需要为发送信息的外部系统支付正常的运行费用。
时间/人力成本: 非常低。创建和配置一个 Webhook 机器人通常只需要几分钟到十几分钟。主要的时间成本在于配置你的外部系统,让它能够向 Webhook 地址发送数据。 -
开放平台应用机器人 (自定义开发):
财务成本: 飞书开放平台本身创建应用和使用大部分 API 是免费的,但如果你需要部署自己的服务器来处理机器人逻辑(接收事件、调用 API),你需要支付服务器托管、流量、数据库等的费用。
时间/人力成本: 这是主要的成本。需要具备编程能力的开发者来设计、开发、测试、部署和维护机器人。一个简单的互动机器人可能需要几天的工作量,而一个复杂的、与多个内部系统深度集成的机器人可能需要几周甚至几个月的工作量。持续的维护和更新也需要投入人力。 -
第三方应用机器人 (从应用目录安装):
财务成本: 这取决于具体的第三方应用。有些应用提供免费的基础版本包含机器人功能,有些则需要付费订阅才能使用其完整功能,包括机器人。费用可能是按用户数、功能模块或使用量计费。
时间/人力成本: 通常较低。安装和配置第三方应用通常比较便捷,花费的时间主要是了解应用功能和进行必要的设置。
其他可能的“多少”:
-
多少个机器人? 在技术上,一个组织可以在开发者平台创建许多不同的应用,每个应用都可以包含机器人能力。在群聊中添加 Webhook 机器人也没有严格的数量限制(但太多可能会刷屏)。第三方应用的数量取决于你购买的服务。
-
多少信息量? 飞书开放平台对 API 调用有一定的频率限制(QPS/RPM),这会影响你的机器人能处理的信息量和响应速度。对于大型组织或高频场景,需要考虑 API 限制并进行合理设计。
总的来说,从免费且易于上手的 Webhook 机器人,到需要专业开发投入的自定义机器人,再到付费购买的第三方应用机器人,飞书提供了不同层级的机器人解决方案,成本投入也从几乎为零到需要显著的技术和财务投入不等。选择哪种方式取决于你的具体需求、预算以及内部的技术能力。
如何添加和配置飞书机器人?
根据机器人类型的不同,添加和配置的方式也有所区别。
如何添加 Webhook 机器人 (最简单):
-
打开你想要添加机器人的飞书群聊。
-
点击群聊右上角的“设置”按钮(通常是一个齿轮图标)。
-
在设置菜单中找到并点击“机器人”选项。
-
点击“添加机器人”。
-
选择“自定义机器人”。
-
为你的机器人命名(例如:“系统告警通知”)。
-
(可选)上传一个机器人头像。
-
(可选)填写机器人描述。
-
点击“添加”。
-
系统会生成一个唯一的 Webhook URL。务必复制并保存这个 URL,这就是你的外部系统需要用来发送消息的地址。同时,你可以看到一些安全设置选项,比如是否开启签名校验(建议开启以提高安全性)。
-
将复制的 Webhook URL 配置到你的外部系统中(例如:监控系统的告警通知设置、CI/CD 流水的通知步骤等)。
-
你的外部系统现在可以通过向这个 URL 发送 POST 请求(带着特定格式的 JSON 数据)来通过机器人发送消息到这个群聊了。
如何添加开放平台应用机器人:
-
如果机器人是某个已安装的第三方应用的一部分,通常应用安装完成后,机器人会自动出现在应用列表中,或者你可以在应用设置中找到关联的机器人并将其添加到群聊。
-
如果是自己通过开发者平台创建的应用机器人:首先确保你的应用已经在开发者平台创建并启用了“机器人”能力。然后,应用的管理员可以在“应用能力” -> “机器人”设置中找到机器人的相关信息。
-
在飞书客户端中,根据应用的配置方式,用户可能需要主动将机器人添加到群聊(类似于添加 Webhook 机器人,但在列表中选择的是你创建的应用机器人)或应用本身拥有向特定范围(如组织、部门)发送消息的权限。
如何配置机器人:
-
Webhook 机器人: 配置主要在创建时完成(命名、头像、安全设置)。后续的“配置”更多是指配置你的外部系统如何向这个 Webhook URL 发送符合飞书要求的消息格式。
-
开放平台应用机器人: 配置更为灵活和复杂。这通常需要在飞书开发者平台进行:
- 配置机器人名称、头像、描述。
- 配置机器人拥有的权限范围(例如,是否有权限读取群消息、发送私聊消息、获取用户信息等)。
- 配置机器人能够订阅的事件(例如,监听群消息、监听成员进出群等)。
- 配置接收用户消息和事件的地址(你的服务器提供的接口,也称为 Request URL)。
- 设置安全校验信息 (Verification Token, Encrypt Key)。
-
第三方应用机器人: 配置通常在其应用自身的设置界面中完成,例如设置接收通知的群聊、过滤特定的通知类型、绑定其他服务账号等。
总的来说,添加机器人是一个相对简单的操作,但配置(特别是自定义开发的应用机器人)可能涉及到开发者平台的多项设置和外部服务器的代码实现。
怎么使用飞书机器人进行自动化和交互?
飞书机器人的核心价值在于实现自动化和增强用户与系统之间的交互。实现这些需要理解机器人接收和发送信息的机制。
怎么让机器人发送信息 (实现自动化通知):
-
Webhook 方式: 这是实现简单、单向自动化的首选。
- 你的外部系统(例如:监控服务器、定时任务脚本、CI/CD 平台)在特定事件发生或特定时间点时,生成符合飞书消息格式的 JSON 数据。
- 你的外部系统向之前获取到的 Webhook URL 发送一个 HTTP POST 请求,请求体就是包含消息内容的 JSON 数据。
- 飞书收到请求后,机器人就会将消息发送到对应的群聊中。
- 你可以发送文本、富文本、图片、分享卡片等多种格式的消息。
-
开放平台 API 方式: 适用于更复杂的自动化,需要你的应用具备发送消息的权限。
- 你的后台服务通过调用飞书开放平台提供的“发送消息” API 来发送消息。
- 你需要提供接收消息的对象 ID(可以是用户 ID、群聊 ID),以及消息内容和格式。
- 这种方式更灵活,可以动态决定发送给谁、发送什么内容,并且可以发送更丰富的消息类型,包括互动卡片。
怎么让机器人接收信息和指令 (实现交互):
-
监听用户消息和事件:
- 你的开放平台应用需要在开发者平台配置 Request URL,这是一个你服务器提供的接口地址。
- 订阅你感兴趣的事件,比如“接收群消息”、“接收个人消息”、“互动卡片消息”等。
- 当飞书中发生这些事件时,飞书服务器会将相应的事件数据以 HTTP POST 请求的形式发送到你的 Request URL。
- 你的后台服务接收到这些请求后,解析数据,判断用户发送了什么消息或点击了什么按钮。
-
处理用户指令:
- 用户在群聊或私聊中 @ 机器人名称并输入指令(例如:@我的机器人 查询天气 北京)。
- 你的后台服务通过接收消息事件获取到这条消息内容。
- 解析消息内容,识别出用户提及了机器人以及输入的命令和参数。
- 根据命令执行相应的逻辑,比如调用天气查询接口、查询数据库等。
- 将执行结果通过调用飞书的发送消息 API 发送回群聊或私聊。
-
处理互动卡片交互:
- 机器人通过开放平台 API 发送包含互动组件(按钮、输入框等)的互动卡片。
- 用户在飞书界面上与卡片进行交互(点击按钮、填写并提交表单)。
- 飞书将用户交互的事件(包含用户 ID、交互组件 ID、提交的数据等)以 HTTP POST 请求发送到你的 Request URL。
- 你的后台服务接收到这个交互事件,解析数据,执行相应的业务逻辑(如处理审批、保存表单数据)。
- 根据需要,你可以更新卡片的状态(例如,将按钮变为已点击状态,显示处理结果)或发送新的消息通知用户结果。
实现复杂的自动化和交互,特别是涉及双向通信和业务逻辑的,通常需要开发者使用飞书开放平台提供的丰富 API 和事件订阅能力,并在自己的服务器上编写相应的处理代码。这涉及认证授权、消息加解密、API 调用、事件处理等多个环节。而简单的自动化通知则通过 Webhook 机制即可快速实现。