钉钉常用的消息类型与数据格式总结

d95055c959f878f717b7b564af8e2ab0.png

记录发送钉钉的几种格式消息的使用方式。

目前通过webhook向钉钉发送消息,必须要有安全配置

  • 自定义关键词:最多可以设置10个关键词,消息中至少包含其中1个关键词才可以发送成功。

  • 加签:就是通过timestampsecret进行拼接后得到的一个字符串

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

    • secret: 密钥,机器人安全设置页面,加签一栏下面显示的SEC开头的字符串。

  • IP地址段: 设置IP地址白名单,仅允许白名单内的地址才能发起请求。

下面记录一个使用Python编写的生成加签字符串的脚本:

#python 3.8
import time
import hmac
import hashlib
import base64
import urllib.parse

timestamp = str(round(time.time() * 1000))
#webhook机器人设置界面上复制的加签
secret = 'SEC10d6e79b42bd94be0d0d603843651aa2ccd7186db6edbcxxxxxxxxxxxxxcf421cd'
secret_enc = secret.encode('utf-8')
string_to_sign = '{}\n{}'.format(timestamp, secret)
string_to_sign_enc = string_to_sign.encode('utf-8')
hmac_code = hmac.new(secret_enc, string_to_sign_enc, digestmod=hashlib.sha256).digest()
sign = urllib.parse.quote_plus(base64.b64encode(hmac_code))
#webhook机器人设置界面上复制的Webhook地址
webhook_url_base = 'https://oapi.dingtalk.com/robot/send?access_token=e9a8118c8a3dcxxxxxxxxxx685fab41df25b9dc865fd74'

webhook_url = '{}&timestamp={}&sign={}'.format(webhook_url_base,timestamp,sign)

print(webhook_url)

afe91c5b419cc8150c25b1356227cccd.png

准备好加签后的webhook地址后,就可以通过http请求,向钉钉模拟发送消息了。

钉钉消息类型和格式有以下几种:

dd7c51dec2b14b046981bb2d2927a80f.png

Text文本类型

先了解下消息体字段含义:

e788ef0be3766510752ee863e19a1f90.png

然后通过postman结合上面我们通过Python生成的Webhook地址即可模拟发送消息了:

9280989dcbdaf7044e07f4f6d51b0bf4.png

  • 如果想要在群里单独艾特某人,需要在content中使用@183xxxxxxxx即可

  • 如果想要群里艾特所有人,只需要保留at.isAtAll即可,at.atMobiles则不需配置

  • 如果想要逐个艾特at.atMobiles里面的人,则不要在content中配置@183xxxxxxxx格式即可,如下:

17caa3d00dda98cae193c46918296777.png

大概也就这几种艾特的方式或者情景,如有其他的,可以自行测试研究即可。当然其它几种消息类型也是这样;

看下效果图如下:

d49d463e6318aebc9868248613b3e566.png

Markdown文本类型

3658c54b464acd99ad01e868d34c90b2.png

消息预览:

7669a1df79f07f9ed4691963f297c83a.png

576794c7ccdac9089c9c07d6984557f2.png

Link文本消息

9369f877511a8ac4d750e3fd34ac21ea.png

消息预览:

c406d4fa51093fddbf37b33a626033f9.png

ActionCard消息类型

7d5aa824204de58fd86b53eda32025a2.png

消息预览

74d2b4677cc110250f81d21f8090e6f7.png

acc92244e92a8000fdd1c543e3c63b69.png

aed8a277cbf559ef40c9acdf16add36a.png

FreeCard文本消息

3c7d287b2d2a3e9b56e46fec61fdabe6.png

225f2238991a58fdc2e3a0b751e67016.png

大概就这么多了, 好了这些格式你了解了么?

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

云原生生态圈

你的鼓励是我创作的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值