工作流自动化——以飞书集成平台为基础的实践

工作流自动化——以飞书集成平台为基础的实践

开发者广场内容精选NaN-NaN-NaN
解决方案
作者:Junxian DIAO 刁俊先
推荐理由
通过飞书集成平台的集成能力实现降本提效,让一系列的人工重复操作交由机器便可完成!
什么是工作流自动化?
1.工作流自动化根据业务规则设计和执行一系列重复的业务任务,以减少人机交互,提高生产力。工作流是为实现业务目标而必须完成的一系列任务;
2.举个例子,如果你是 MacOS 用户,也许用过“自动操作 Automator”的应用,它是 Mac 系统自带的任务流自动化工具,只需要拖拽鼠标等操作就能将一系列动作组合成一个工作流程,从而帮助你自动完成一些重复任务,比如,定时打开聊天框发送邮件消息到指定用户等;
3.市面上有比较成熟的付费工作流自动化平台 Zapier /http://tray.io,也有开源的替代工具n8n,今天介绍的是飞书集成平台,它的口号是让企业的业务系统集成更标准、更安全、更简单,解决企业内部应用互联、业务自动化等问题,让信息的传递更高效,让企业内的信息充分互通。
4.简单的说,都是通过集成能力让一系列的人工重复操作,交由机器完成,实现降本提效;
通过 Gerrit webhooks 关联飞书消息推送
原始诉求
1.研发期望 Gerrit Code Review 加人的时候,可以有飞书提醒;
2.其实现在是有提醒的,只是配置在 Gerrit 服务系统配置里面,配置的是邮件提醒,公司当前是重度飞书使用,邮箱基本已经闲置,研发有诉求,就开始干;
方案整理
1.其实回头看,要想实现这个简单的需求有许多办法,我们当前围绕飞书开放平台 open api 实现了完整的飞书能力的构建,通过 Jenkins Gerrit 插件可以监听到 Gerrit Code Review Added Events ,然后调用我们封装好的飞书消息推送的 API 就能实现;
2.由于对于飞书集成平台比较感兴趣,刚关注到它发布,借着这个需求可以完整实践一次;
3.回到这个需求本身,实现过程应该通过 Gerrit hooks 事件的消息推送,然后将消息推送到指定开发者;
4.Gerrit 有提供webhooks 的插件
5.通过插件可以将 Gerrit events 通过 REST API 发送到指定服务,然后实现消息提醒;
6.飞书集成平台提供了多服务外部集成能力。
实现过程
Gerrit webhooks 插件下载
2.上传插件,通过 api 上传
curl --user xxx:xxx -X PUT -H "Content-Type:application/octet-stream" --data-binary @{plugins}.jar 'https://xxx.xxx.xx/a/plugins/{plugins}.jar'''
3.重启 Gerrit 服务生效插件;
开启 webhooks 通知
1.增加 webhook 到 指定 respository,其中 /a/ 是开启 http auth;
curl --user xxx/xxx https://xx.xx.com/a/config/server/{plugins}~projects/{指定仓库}/remotes/{自定义} curl --location --request PUT 'https://xx.xx.xx/a/config/server/{plugins}~projects/{指定仓库}/remotes/{自定义}' \--header 'Content-Type: application/json' \--header 'Authorization: xxxx' \--data-raw '{ "url": "https://open.feishu.cn/xxxx", "maxTries": 3, "sslVerity": true, "events": ["reviewer-added"]}'
2.参考文档 gerrit webhooks 文档地址gerrit webhooks 文档地址
飞书集成平台实现消息转发
1.飞书集成平台是为了企业的业务系统集成更标准、更安全、更简单,解决企业内部应用互联、业务自动化等问题,让信息的传递更高效,让企业内的信息充分互通;
2.建立飞书集成流:
3.过程中踩的坑:
外部接收到的数据,需要先将其中的 body message 执行 json 序列化,改成 json 结构体;
250px|700px|reset
通过动态脚本,将需要组装的消息卡片结构体组装成 object;
250px|700px|reset
最后再将 object 反序列化为 string 提供给飞书消息的组件实现消息发送;
实现消息推送效果
收益回顾
1.实现飞书消息的递送,由 webhook 消息体转成飞书消息体全流程;
2.方便研发接收 code review 信息,及时响应;
3.大致了解实践了飞书集成平台里面各个组件的使用,飞书集成平台的组件文档依然非常缺失,但是仍然值得我们花时间尝试,它有可能帮助我们在企业内自动化实现效率提升。
先进生产力和业务协同平台
联系我们立即试用
更多人气推荐
查看更多

先进团队,先用飞书

欢迎联系我们,飞书效能顾问将为您提供全力支持
分享先进工作方式
输送行业最佳实践
全面协助组织提效
反馈给飞书 CEO:ceo@feishu.cn