qq群机器人定时消息怎么删除(实现定时消息推送)

首页教程更新时间:2023-05-19 09:01:55

qq群机器人定时消息怎么删除,实现定时消息推送(1)

qq群机器人定时消息怎么删除,实现定时消息推送(2)

点击上方头像关注我,每周上午 09:00准时推送,每月不定期赠送技术书籍,小窗口回复“资源”、“测试工具包”领取测试资源。

本文7527字,阅读约需19分钟

Hi,大家好。很多公司都选择阿里旗下的办公软件钉钉来作为管理工具,u1s1,钉钉这个产品有很多槽点,但其中的机器人功能还是让人眼前一亮,它可以将第三方服务的信息聚合到钉钉群中,实现信息的自动化同步。

例如:通过聚合Github、Gitlab等源码管理服务,实现源码更新同步;通过聚合Trello、JIRA等项目协调服务,实现项目信息同步;同时,支持Webhook协议的自定义接入,支持更多可能性,例如:将运维报警提醒、自动化测试的结果报告提醒、工作、生活日程安排(上班打卡、下班吃饭、健身、读书、生日、纪念日...)等等的提醒,通过自定义机器人聚合到钉钉中。

不过关于钉钉机器人网上的一些攻略年代都比较久远,代码很多都基于Python2,为了与时俱进,我们尝试用python3 来开发配置钉钉自定义机器人,如果想要获取本文完整代码可在ITester软件测试小栈微信公众号后台回复“钉钉群消息源码”。

使用场景:定时上下班打卡,定时提醒,测试结果推送等。

系统环境:windows/Mac

python环境:Python3以上

其他设备:钉钉

钉钉设置

创建钉钉机器人

①添加智能群助手:首先明确一点,钉钉自定义机器人目前不支持在手机端创建,所以打开PC端或者Mac端的钉钉客户端,在需要机器人的聊天群界面,点击智能群助手。

qq群机器人定时消息怎么删除,实现定时消息推送(3)

②随后点击添加机器人按钮:

qq群机器人定时消息怎么删除,实现定时消息推送(4)

③此时能看到很多已经封装好的第三方机器人,我们选择自定义机器人:

qq群机器人定时消息怎么删除,实现定时消息推送(5)

值得一提的是,钉钉的机器人基于webhook协议,webhook呢是一个api概念,是微服务api的使用范式之一,也被称为反向api,即前端不主动发送请求,完全由后端推送。

填写添加信息

①在添加机器人界面里,填写一些机器人的信息:

qq群机器人定时消息怎么删除,实现定时消息推送(6)

需要注意的是,在安全设置一栏里,我们选择加签的方式来验证。钉钉机器人的安全策略有三种:第一种是使用关键字,就是说推送的消息里必须包含创建机器人时定义的关键字,如果不包含就推送不了消息;第二种就是使用加密签名,第三种是定义几个ip源,非这些源的请求会被拒绝。综合来看,还是第二种又安全又灵活。

②创建成功后,系统会分配一个webhook地址,这个地址需要保存一下,地址中有唯一的accesstoken。

qq群机器人定时消息怎么删除,实现定时消息推送(7)

③添加完成:

qq群机器人定时消息怎么删除,实现定时消息推送(8)

Python代码实现钉钉消息推送

编写代码

创建一个钉钉发送消息的Python文件,编写代码。

①安全方式使用加签的方式:timestamp "\n" 密钥当做签名字符串,使用HmacSHA256算法计算签名,然后进行Base64 encode,最后再把签名参数再进行urlEncode,得到最终的签名(需要使用UTF-8字符集)。

参数说明如下:

参数

说明

timestamp‍

‍当前时间戳,单位是毫秒,与请求调用时间误差不能超过1小时

secret

密钥,机器人安全设置页面,加签一栏下以SEC开头的字符串

代码如下所示:

qq群机器人定时消息怎么删除,实现定时消息推送(9)

② 将timestamp和第一步得到的签名值拼接到URL中:

https://oapi.dingtalk.com/robot/send?access_token=XXXXXX×tamp=XXX&sign=XXX

参数说明如下:

参数

说明

timestamp

时间戳

sign

签名值

③发送请求:

qq群机器人定时消息怎么删除,实现定时消息推送(10)

2

实现效果

推送效果如下:

qq群机器人定时消息怎么删除,实现定时消息推送(11)

Python DingDingBot实现钉钉消息推送

Python第三方包之DingDingBot钉钉机器人实现消息推送,支持发文本格式、链接格式、Markdown格式。

安装DingDingBot

安装命令如下:

pip install DingtalkChatbot钉钉发消息示例

(1) 发送txt消息 @所有人

示例代码如下:

qq群机器人定时消息怎么删除,实现定时消息推送(12)

推送效果如下:

qq群机器人定时消息怎么删除,实现定时消息推送(13)

(2) 发送txt消息 @指定人

示例代码如下:

# 用户手机号列表 at_mobiles = ['13112341234'] #这里填@的人的手机号,可自定义@的位置,默认添加在消息末尾 xiaoding.send_text(msg='欢迎关注微信公众号:ITester软件测试小栈!', at_mobiles=at_mobiles)

推送效果如下:

qq群机器人定时消息怎么删除,实现定时消息推送(14)

(3) 发送Link消息

示例代码如下:

# link xiaoding.send_link(title='ITester软件测试小栈所有历史文章', text='点击查收!', message_url='https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect', pic_url='http://wx.qlogo.cn/mmhead/Q3auHgzwzM6h0QgTMSjYavc1h3yODa0xnS5iaI09GXpM49gpncZcYhw/132')

推送效果如下:

qq群机器人定时消息怎么删除,实现定时消息推送(15)

(4) 发送图片消息

示例代码如下:

# image xiaoding.send_image(pic_url='https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1')

(5) 发送Markdown消息给所有人

示例代码如下:

# markdown # 1、提醒所有人 xiaoding.send_markdown(title='ITesster软件测试小栈', text='#### ITesster软件测试小栈 精选话题\n' '> 接口自动化测试,UI测试,测试面试,送书福利\n\n' '> ![话题](https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1)\n' '> ###### 10点24分发布 [查看所有](https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect) \n', is_at_all=True)

(6) 发送Markdown消息给指定人

示例代码如下:

# 用户手机号列表 at_mobiles = ['13112341234'] #这里填@的人的手机号,可自定义@的位置,默认添加在消息末尾 # 2、提醒指定手机用户,并在text内容中自定义”@用户“的位置 xiaoding.send_markdown(title='ITesster软件测试小栈', text='#### ITesster软件测试小栈 精选话题 @13112341234\n' '> 接口自动化测试,UI测试,测试面试,送书福利\n\n' '> ![话题](https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1)\n' '> ###### 10点24分发布 [查看所有](https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect)\n', at_mobiles=at_mobiles, is_auto_at=False)

(7) ActionCard整体跳转消息类型

示例代码如下:

# 整体跳转ActionCard btns1 = [CardItem(title="查看详情", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect")] actioncard1 = ActionCard(title='ITester软件测试小栈', text='![markdown](https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1) \n### 扫码可查看ITester软件测试小栈历史文章', btns=btns1, btn_orientation=1, hide_avatar=1) xiaoding.send_action_card(actioncard1)

推送效果如下:

(8) ActionCard单独跳转消息(两个按钮选择)

示例代码如下:

# 单独跳转ActionCard # 1、两个按钮选择 btns2 = [CardItem(title="点赞", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect"), CardItem(title="比心❤️", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect")] actioncard2 = ActionCard(title='查看详情', text='![markdown](https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1) \n### 扫码可查看ITester软件测试小栈历史文章', btns=btns2, btn_orientation=1, hide_avatar=1) xiaoding.send_action_card(actioncard2)

推送效果如下:

(9) ActionCard单独跳转消息(三个按钮选择)

示例代码如下:

# 2、三个按钮选择 btns3 = [CardItem(title="点赞", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect"), CardItem(title="星标✨", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect"), CardItem(title="比心❤️", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect")] actioncard3 = ActionCard(title='查看详情', text='![markdown](https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1) \n### 扫码可查看ITester软件测试小栈历史文章', btns=btns3, btn_orientation=1, hide_avatar=1) xiaoding.send_action_card(actioncard3)


(10) FeedCard消息类型

示例代码如下:

# FeedCard消息类型(注意:当发送FeedCard时,pic_url需要传入参数值,必选) card1 = CardItem(title="ITester软件测试小栈历史文章", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect", pic_url="https://mmbiz.qpic.cn/mmbiz_gif/9RdLdzUL98hSxnicLQUHJlRh6jE5bJOOOK5gpQSEsjgibnDKGrDic6AL1yUmyAmkn638fQvDGDroQkEHnib6iaOSAEg/640?wx_fmt=gif&tp=webp&wxfrom=5&wx_lazy=1") card2 = CardItem(title="精选文章", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect", pic_url="http://wx.qlogo.cn/mmhead/Q3auHgzwzM6h0QgTMSjYavc1h3yODa0xnS5iaI09GXpM49gpncZcYhw/132") card3 = CardItem(title="热门文章", url="https://mp.weixin.qq.com/mp/profile_ext?action=home&__biz=MzI5MTg1NjA4Nw==#wechat_redirect", pic_url="http://wx.qlogo.cn/mmhead/Q3auHgzwzM6h0QgTMSjYavc1h3yODa0xnS5iaI09GXpM49gpncZcYhw/132") cards = [card1, card2, card3] xiaoding.send_feed_card(cards)

推送效果如下:

实现钉钉定时消息推送


钉钉定时消息推送可通过Jenkins集成,除此之外Mac端和PC端可以用自带的命令或工具实现定时消息推送,小白也能轻松搞定。

Mac端定时消息推送

Mac下可以使用crontab,通过crontab 命令可以在固定的间隔时间执行指定的系统命令或 shell 脚本,时间间隔的单位可以是分钟、小时、日、月、周及以上的任意组合,组合方式需要符合相应语法。该工具非常适合周期性的日志分析或数据备份等工作,定时发送钉钉消息。

①用sudo crontab -e创建或者修改任务:

任务文件格式:

sudo crontab -e #回车,输入密码 #进入编辑任务页面

②编辑任务:

* * * * * python安装路径 运行文件路径 │ │ │ │ │ │ │ │ │ └─── 星期几 (0 - 6) (0到6 0代表周日 1周一) │ │ │ └──────── 月份 (1 - 12) │ │ └───────────── 每月几号 (1 - 31) │ └────────────────── 小时 (0 - 23) └─────────────────────── 分钟 (0 - 59)PC端定时消息推送

Windows用自带的任务计划程序,定时发送钉钉消息。

①打开任务计划程序:控制面板>系统和安全>管理工具>任务计划程序。

qq群机器人定时消息怎么删除,实现定时消息推送(16)

②创建基本任务:

qq群机器人定时消息怎么删除,实现定时消息推送(17)

③填写配置信息:

a)填写名称:

qq群机器人定时消息怎么删除,实现定时消息推送(18)

b)填写执行间隔:

qq群机器人定时消息怎么删除,实现定时消息推送(19)

c)填写执行开始时间:

qq群机器人定时消息怎么删除,实现定时消息推送(20)

d)填写启动内容(目前只支持启动某个程序或脚本)

qq群机器人定时消息怎么删除,实现定时消息推送(21)

e)选择要执行的程序或脚本:将钉钉推送消息的Python代码另存为.bat文件,然后在这一步打开。

qq群机器人定时消息怎么删除,实现定时消息推送(22)

④运行Python脚本

在Python环境下,用cmd可以直接运行Python脚本。例如脚本文件名是:chatbot.py 存放在C盘,则写一个批处理,内容为:

python C:\chatbot.py

然后把此内容另存为 xx.bat文件,则选择运行此文件即可。

叮叮叮是不是每天都能收到Python开发的钉钉群机器人推送的消息了?如果想要获取完整代码可在ITester软件测试小栈微信公众号后台回复“钉钉群消息源码”。

更多系列文章

敬请期待


我是CoCo,计算机科学与技术专业,深漂大厂互联网民工(女),坐标深圳。5年工作经验,3年持续输出技术文。ITester软件测试小栈(ID:ITestingA),专注于软件测试技术和宝藏干货分享,每周准时更新原创技术文章,每月不定期赠送技术书籍,愿我们在更高处相逢。喜欢记得星标⭐我,每周及时获得最新推送,第三方转载请注明出处。

qq群机器人定时消息怎么删除,实现定时消息推送(23)

qq群机器人定时消息怎么删除,实现定时消息推送(24)

想获取更多最新干货内容

快来星标 置顶 关注

,
图文教程
相关文章
热门专题
推荐软件
奇热小说
奇热小说
下载
QQ2019手机版
QQ2019手机版
下载
王者荣耀
王者荣耀
下载
百度浏览器迷你版
百度浏览器迷你版
下载
2345浏览器手机版
2345浏览器手机版
下载
网易邮箱
网易邮箱
下载
爱奇艺
爱奇艺
下载
网易云音乐
网易云音乐
下载
WPSOffice
WPSOffice
下载
优酷
优酷
下载
谷歌浏览器(Chrome)
谷歌浏览器(Chrome)
下载
迅雷看看播放器
迅雷看看播放器
下载
UC浏览器
UC浏览器
下载
QQ音乐
QQ音乐
下载
阿里旺旺买家版v9.12.10C官方版
阿里旺旺买家版v9.12.10C官方版
下载
360安全卫士v12.1官方版
360安全卫士v12.1官方版
下载
猜你喜欢
IIS定时重启工具v1.50
IIS定时重启工具v1.50
下载
贺州生活网
贺州生活网
下载
佳能扫描仪软件CapturePerfectv3.0官方版
佳能扫描仪软件CapturePerfectv3.0官方版
下载
lol统治战场挂机脚本最新版
lol统治战场挂机脚本最新版
下载
万医健康医生版app
万医健康医生版app
下载
UC浏览器极速版电脑版
UC浏览器极速版电脑版
下载
阳光租赁
阳光租赁
下载
万古神帝无月高爆版
万古神帝无月高爆版
下载
paperpass知网维普万方大雅论文降重软件v3.8官方版
paperpass知网维普万方大雅论文降重软件v3.8官方版
下载
乐高蝙蝠侠2超级英雄修改器+7
乐高蝙蝠侠2超级英雄修改器+7
下载
忍者耶稣
忍者耶稣
下载
阜新二院
阜新二院
下载
中国蔬菜交易平台
中国蔬菜交易平台
下载
面对疾风吧
面对疾风吧
下载
暗黑之血2iOS
暗黑之血2iOS
下载
狮人英雄
狮人英雄
下载