在上一篇 基于飞书群智能助手从gitlab中获取信息并@具体成员(一)详细讲解了基于飞书群智能助手私信成员的姿势,那接下来为大家介绍通过webhook也可以作为私信成员。
文章目录
- 1. 基于飞书的webhook功能
- 1.1 创建工作流
- 1.2 gitlab中创建webhook
- 1.3 选择操作
- 1.4 测试
- 2. 对比
1. 基于飞书的webhook功能
此功能同时适用于创建 机器人应用 和 机器人指令,此案例我们以创建机器人指令为例。
1.1 创建工作流
打开 机器人指令,点击 + 新建机器人指令 按钮**,**创建工作流。
需要将webhook的地址回填到gitlab的webhook的url中,这里可以先记录下来
1.2 gitlab中创建webhook
创建gitlab的webhooks,将上面飞书中的webhook的地址粘贴到URL里面,选择gitlab的触发的事件源
测试gitlab的webhooks,并将测试生成的请求json信息招贴到前面飞书的webhooks的参数中
查看webhooks的详细信息并将请求复制出来
复制请求的信息
然后回到飞书的webhook创建流程的界面,将gitlab通过webhooks的issue触发信息粘贴到飞书的webhook的参数中,点击完成。
1.3 选择操作
这里选择通过通过官方机器人发消息和通过飞书机器人发消息都可以,我们以通过官方机器人发消息为例
红框中的圆圈+都是可以通过前面webhook的参数来使用变量传递的,这里可以通过变量控制会效果更好。
点击完成、对流程进行命名,然后启动
1.4 测试
在gitlab上新建issue
飞书上查看issue创建流程的运行次数
飞书消息通知,点击查看详情便可以跳转到gitlab的创建的对应issue中
2. 对比
通过 飞书的群智能助手和webhook功能确实可以做到单独私信大消息,但两者也有一些差异:
- 群智能助手相比于webhook,消息接收的不是很及时,比较慢,体验不好够;
- 群智能助手也可以做webhook的事情,不借助机器人指令也是可以的;
- 群智能助手在commit、issur、mergerequest上需要多个流程来覆盖不同的gitlab状态;
- webhook虽然功能很全面,但是由于gitlab侧解析出来的请求的信息也是动态的,因此也需要在飞书上创建多个流程来覆盖不同的gitlab状态