由于公司用的通讯工具是钉钉,而群机器人可以实现自动化的信息同步,因此这里总结了自己使用钉钉自定义机器人一些方法,供参考抛砖引玉。
首先是添加群自定义机器人
在钉钉上选择需要发送消息的群,选择群机器人-添加机器人-自定义机器人-添加,如下图:
如需要,可以为机器人设置头像。点击“复制”按钮,即可获得这个机器人对应的Webhook地址,其格式如下
https://oapi.dingtalk.com/rob...
用python编写脚本
#!/usr/bin/python2.7
# -*- coding:utf-8 -*-
import sys
import json
import requests
reload(sys)
sys.setdefaultencoding('utf8')
def sendmessage():
url = 'https://oapi.dingtalk.com/robot/send?access_token=xxx' #这里填写你自定义机器人的webhook地址
HEADERS = {
"Content-Type": "application/json ;charset=utf-8 "
}
message = "周五晚上踢球,大家记得带装备呀~"
String_textMsg = { \
"msgtype": "text",
"text": {"content": message},
"at": {
"atMobiles": [
"130xxxxxxxx" #如果需要@某人,这里写他的手机号
],
"isAtAll": 1 #如果需要@所有人,这些写1
}
}
String_textMsg = json.dumps(String_textMsg)
res = requests.post(url, data=String_textMsg, headers=HEADERS)
print(res.text)
if __name__ == '__main__':
sendmessage()
具体需要推送的内容可以根据自己需求来写,推送的简单形式如上,更多推送形式可以看这里:https://open-doc.dingtalk.com...
用crontab调度
因为之前用Windows的计划任务进行调度,总是莫名其妙的停了,而且老是报字符的错误,所以把脚本同步到ubuntu的虚拟机上,使用crontab调度。
crontab -e #在服务器终端里输入,会进入vim的crontab调度编写页面
在编辑器里输入你要调度的时间,比如
0 7-8 * * 5 python /mnt/d/tools/reminder/reminder-football.py #意思是每周五早上7点和8点整点执行上面的那个脚本
然后保存退出即可,这样子你的钉钉机器人就会按时将信息发送到群里了,效果如下:
钉钉的机器人功能还是很不错的,希望大家能发掘出更多的应用场景。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。