功能说明
- 当希望飞书发生特定事件时可以触发流程,但流程内还暂时没有特定事件的触发器时,可以使用「通用飞书事件」触发器。
- 支持订阅飞书开放平台上的任意事件(飞书开放平台支持的事件请参考事件列表),当订阅的事件发生时,会将事件内容推送到指定的流程并触发流程执行。
适用场景
下面列举两个简单的适用场景。开发者可以根据实际需求,订阅不同的事件。
- 实时数据处理
- 如果应用对数据的实时性要求比较高,希望能够及时地从飞书同步数据的变化,可以进行事件订阅。例如在用户离职时,应用需要第一时间处理离职用户的业务数据,就可以订阅员工离职事件。
- 快速事件响应
- 如果应用需要及时响应用户的操作,可以进行事件订阅。例如当新人入群时,群机器人需要给新人发送一条欢迎消息,就可以订阅用户进群事件。
整体配置流程
250px|700px|reset
使用说明
- 添加「飞书通用事件」触发器
新建流程,在选择触发器时搜索或查找到「飞书」分类内的「通用飞书事件」触发器
250px|700px|reset
- 选择需要订阅的事件版本
开放平台提供的事件包括 v1.0 和 v2.0 两个版本。
v2.0 版本的事件设置更全面、更合理,建议开发者订阅 v2.0 版本的事件
250px|700px|reset
如果开发者同时订阅了 v1.0 版本和 v2.0 版本的事件,请确保不要重复订阅同一事件。
如下图所示,如果订阅了通讯录变更v1.0 和员工离职 v2.0 事件,当有一个员工离职时,应用会收到两个相同的员工离职事件。
250px|700px|reset
250px|700px|reset
- 选择飞书集成
前置说明:订阅飞书开放平台的事件需要先有一个飞书的自建应用,一个「飞书的自建应用」对应于飞书低代码平台的一个「飞书集成」
每个飞书低代码平台应用默认会生成飞书开放平台的一个自建应用,即默认系统默认的飞书集成。也可以添加自己的飞书自建应用作为飞书集成,需要选择一个飞书集成来订阅飞书的事件。
250px|700px|reset
在下文,会以添加自己的飞书自建应用作为飞书集成为例来讲解配置过程,如果使用系统默认的飞书集成,则有些步骤可以省略,将会在文中有备注
- 创建一个飞书开放平台的自建应用
如果使用默认飞书集成或已经拥有飞书自建应用,该步骤可跳过
- 进入飞书开放平台:https://open.feishu.cn/?lang=zh-CN
- 进入「开发者后台」
250px|700px|reset
- 点击「创建企业自建应用」,填写名称、描述等基本信息
250px|700px|reset
250px|700px|reset
- 创建后自动会进入该自建应用的详情页
250px|700px|reset
- 在飞书低代码平台添加飞书集成
- 点击「添加飞书集成」,输入飞书集成的名称、飞书应用 App ID、飞书应用 App Secret
250px|700px|reset
250px|700px|reset
- 添加飞书集成的各字段详细说明
- 添加飞书集成后,选中新建的飞书集成
250px|700px|reset
- 配置事件的回调地址、事件和所需权限
当事件发生时,事件推送的地址(即触发流程的请求 url)
如果使用默认飞书集成该步骤可跳过
- 复制线上环境的请求地址
250px|700px|reset
- 进入飞书自建应用的详情页 - 「事件与回调」菜单
将复制的网址粘贴到「请求地址」处,保存
250px|700px|reset
250px|700px|reset
- 添加需要订阅的事件
根据业务需要,选择需要订阅的事件
备注:飞书云文档、飞书日历、飞书审批的事件,除了在这里添加事件外,还需要额外打接口给具体的实例订阅该事件,详见常见问题 2
250px|700px|reset
250px|700px|reset
- 申请事件所对应的权限
不同的事件所需的权限也不同
250px|700px|reset
250px|700px|reset
- 发布飞书自建应用使配置生效
填写版本号、申请理由等发布配置后,申请发布后等待管理员审批
250px|700px|reset
250px|700px|reset
250px|700px|reset
250px|700px|reset
- 配置测试企业中的事件订阅
复制开发环境的请求地址
250px|700px|reset
- 进入飞书开放平台 - 切换至绑定的飞书测试企业
前置说明:
- 若当前应用未关联测试企业,需要新建关联一个测试企业(新建的测试企业就是真实的飞书的一个企业)才能在开发环境中进行测试事件的触发,如何关联详见 常见问题 1
- 关联测试企业后,线上环境的所有飞书集成(包括系统默认的飞书集成)对应的飞书自建应用,都会自动在飞书开放平台测试企业中同步创建一份
250px|700px|reset
- 进入开发者后台,找到测试企业中对应的自建应用,进入详情页 - 「事件与回调」菜单
250px|700px|reset
再次配置请求地址、添加事件和权限
测试企业中,权限会默认申请,也无需发布即可生效
250px|700px|reset
250px|700px|reset
250px|700px|reset
250px|700px|reset
开放平台的配置完成了~
- 消费事件内容
事件发生后,触发流程可能希望在下游的节点中消费事件的内容,但是因为通用飞书事件触发器可以被任意飞书开放平台的事件触发,所以事件内容不经相同。
如何在开发环境中使用到事件内的具体字段呢?
- 添加 JSON 助手节点将触发器输出的 事件体 取出来,JSON 转 文本
250px|700px|reset
250px|700px|reset
- 再添加一个 JSON 助手节点,将第一个 JSON 助手的输出(文本)转为 JSON
250px|700px|reset
- 编辑输出 JSON 变量的格式(schema)
250px|700px|reset
可以到飞书开放平台的「事件接口文档」内查看「事件体示例」,将示例复制粘贴过来,会根据示例自动解析 JSON 的 schema。
250px|700px|reset
250px|700px|reset
维护好事件的内部结构后,后续节点就可以无代码消费事件内的字段数据了
250px|700px|reset
接下来,就可以在流程内搭建事件触发后的业务逻辑了
例如:
- 事件发生后发送飞书消息提醒
- 将事件内容在对象记录中落库
- 等等
搭建流程完成之后,启用流程并发布应用后,即可在线上环境生效。
备注:如想在开发环境中真实测试事件触发,需要启用流程后,在飞书测试企业中设法触发事件,才能真正起到测试的作用哦
流程的「测试」按钮处测试,触发的事件内容是 mock 数据,无法测试事件发生时是否能真实触发,仅能测试在触发后的流程是否是正常执行的
常见问题
- 关联测试企业
- 若当前应用未关联测试企业,需要新建关联一个测试企业(新建的测试企业就是真实的飞书的一个企业)
所有与飞书集成相关的功能测试,都是在测试企业中进行的,所以需要先绑定一个测试企业
- 入口:可以预览任意一个页面,点击测试工具栏的「测试企业」
250px|700px|reset
250px|700px|reset
- 添加后可以在飞书客户端左下角切换查看测试企业
如果未查看到测试企业,可以点击左上角的头像,点击「添加账号」可以查看绑定的测试企业
250px|700px|reset
250px|700px|reset
- 如何打接口给具体的某个日历、文档或审批实例进行订阅事件
进入飞书开放平台 >> 开发文档 >> 服务端 API >> 找到对应的事件文档
在右侧的 API 调试台内,按照订阅事件请求所需的入参,输入需要订阅的文档 token(或审批定义 code),使用 tenant_access_token(应用身份)或 user_access_token(用户身份)来发送订阅请求。
备注:发送事件订阅请求还是需要拥有接口的对应权限,若没有权限,需要先申请权限
当订阅事件的请求成功返回 success,则表示订阅成功
250px|700px|reset