使用Linux Crontab结合 企业微信的群聊机器人 定时发送消息通知
2023-03-07 09:09:32 时间
我所在的组每周五都需要发送一条填写周报的通知,经常因为琐事烦恼就忘记了,一直想着搞写一个模块挂在服务器上,定时发一个HTTP请求给企微自带的群聊机器人,这样就实现了一个最简单的“自动化办公”
一开始是想通过写个模块来实现,还可以对接公司的项目管理的数据库,查一些数据分析,后面扩展性很高。但一直没实现的原因还是懒,懒得另外起一个项目,甚至是接入一堆臃肿的组件。
今天重新思考下,其实目前我的通知内容并不需要查询到数据库,需要自动化查询当前的8月份,以及附带excel的url(每个月的url都会变,方便组员点击后直接到对应的月份)。 然后又想起来Linux下其实有自带的定时任务插件——Crontab。
那么思路一下来了:
- 将消息通知内容通过shell脚本写成一个Linux下可执行的HTTP请求。
#!/bin/bash
curl 'https://qyapi.weixin.qq.com/cgi-bin/webhook/send?key=群聊机器人的key' \
-H 'Content-Type: application/json' \
-d '
{
"msgtype": "text",
"text": {
"content": "请大家更新周进度。\n 1.请....",
"mentioned_list":["userid1","userid2","userid3","@all"]
}
}'
2.将shell脚本添加到crontab的任务列表里面,并配置需要的cron表达式。
#每周五下午16:30分执行一次通知脚本
30 16 * * 5 cd / && ./week_report_notify.sh
这样子只要当前服务器可以连通外网,将请求发送到企微的服务器,那么我们就完成一个最简单的OA办公自动化脚本,提供我们的生产效率啦~
实际上week_report_notify.sh可以玩的花样很多,我在实际使用中还添加几个变量,用以获取当前的月份;在需要连接数据库时,也可以通过访问我们自己后台接口,“curl http://ip:port/requestName >> response.log” 将返回的内容作为参数,添加到我们的请求中,这样子可以做的事情多很多了。
禅定时刻 这个事情反思一下: 事情要先思考本质,要警惕程序员的技术性思维,如果按照最开始的自动化模块的想法,可能这个事情会一直搁置下去,但换个简单的方式,几分钟就搞定了~
相关文章
- 数据孤岛是业务效率的无声杀手
- 2023展望:新的一年将给大数据分析领域带来什么?
- 阿里云ADB基于Hudi构建Lakehouse的实践
- 大数据在医疗保健领域的使用案例
- 微软增加说明:KB5021751 更新扫描已经 / 即将过时 Office 过程中不会触碰用户隐私
- 2022 Gartner全球云数据库管理系统魔力象限发布 腾讯云数据库入选
- 场景化、重实操,分享一个实时数仓实践案例
- Arctic的湖仓一体践行之路
- 分布式计算MapReduce究竟是怎么一回事?
- 淘系数据模型治理优秀实践
- 大数据分析对医疗保健的影响
- 当我们说大数据Hadoop,究竟在说什么?
- 2022年及以后大数据的五个发展趋势
- 网易严选离线数仓治理实践
- 2023 年数据治理趋势
- 一份“靠谱”的年度经营计划,你学会了吗?
- 漫谈对大数据的思考
- 测试一下,读懂数据的能力,你有吗?
- 用艺术的眼光探索数据之美
- 聊聊数据分析成果如何落地