钉钉自定义机器人消息文本类型
详细介绍可参考钉钉官方文档 https://developers.dingtalk.com/document/robots/custom-robot-access
钉钉自定义机器人介绍及调用代码请见 https://www.cnblogs.com/howardzhangdqs/p/dingtalk_robot_instruction_1.html
消息类型
钉钉支持 文本 (text
)、链接 (link
)、markdown
、ActionCard
、FeedCard
五种格式
text
类型消息
{
"text": {
"content":"消息内容(记得在此处加上自定义的关键字)"
},
"msgtype":"text"
}
注:text
类型消息 支持 @群成员,具体见关于@群成员
link
类型消息
{
"msgtype": "link",
"link": {
"text": "消息内容(如果太长则会只显示部分并以省略号结尾)",
"title": "消息标题(记得在此处加上自定义的关键字)",
"picUrl": "要展示的图片URL",
"messageUrl": "点击消息跳转的URL"
}
}
markdown
类型消息
{
"msgtype": "markdown",
"markdown": {
"title":"会话展示内容(不会显示在消息中,记得在此处加上自定义的关键字)",
"text": "markdown格式的消息"
}
}
具体钉钉支持的markdown
类型在https://www.cnblogs.com/howardzhangdqs/p/dingtalk_robot_instruction_3.html一文中有介绍
ActionCard
类型消息
整体跳转ActionCard
类型消息
{
"actionCard": {
"title": "会话展示内容(不会显示在消息中,记得在此处加上自定义的关键字)",
"text": "markdown格式的消息",
"singleTitle" : "底部按钮的标题",
"singleURL" : "点击按钮后跳转的的URL"
},
"msgtype": "actionCard"
}
独立跳转ActionCard
类型消息
{
"actionCard": {
"title": "会话展示内容(不会显示在消息中,记得在此处加上自定义的关键字)",
"text": "markdown格式的消息",
"btnOrientation": "0或1 0:按钮竖直排列; 1:按钮横向排列",
"btns": [
{
"title": "按钮1",
"actionURL": "点击按钮1后跳转的的URL"
},
{
"title": "按钮2",
"actionURL": "点击按钮2后跳转的的URL"
}
]
},
"msgtype": "actionCard"
}
具体钉钉支持的markdown
类型在https://www.cnblogs.com/howardzhangdqs/p/dingtalk_robot_instruction_3.html一文中有介绍
markdown
类型消息
该类型类似link
类型,但可以有多条link
堆叠在一起
{
"msgtype":"feedCard",
"feedCard": {
"links": [
{
"title": "link1(记得在此处加上自定义的关键字)",
"messageURL": "点击link1后跳转的的URL",
"picURL": "link1使用配图"
},
{
"title": "link2(记得在此处加上自定义的关键字)",
"messageURL": "点击link1后跳转的的URL",
"picURL": "link2使用配图"
}
]
}
}
关于@群成员
在最外层花括号内加入以下代码即可@相应的群成员:
"at": {
"atMobiles":["被@人的手机号"],
"atUserIds":["被@人的用户userid"],
"isAtAll": true 或 false
},
如以下代码会@电话为11451419198
和钉钉号为dingtalksb
的用户并且不会@所有人:
{
"at": {
"atMobiles":[
"11451419198"
],
"atUserIds":[
"dingtalksb"
],
"isAtAll": false
},
"text": {
"content":"你们的电话和钉钉号有问题!"
},
"msgtype":"text"
}
注:
- 被@人的手机号 和 被@人的用户userid 如非群内成员则会被自动过滤
isAtAll
为 是否@所有人,如要 @所有人 则为"isAtAll": true
,反之用"isAtAll": false