dingtalk-plugin
dingtalk-plugin copied to clipboard
这个插件发起的通知里面可以把 @被通知人 插入消息中间,而不是结尾吗?
使用 Python 计算签名,再用 http post 的方法发送通知:
DingTalk.send_message({
"msgtype": "markdown",
"markdown": {
"title": "测试标题",
"text": "测试消息开始 @139xxxxxxxx 测试消息结束",
},
"at": {
"atMobiles": ['139xxxxxxxx']
}
})
这样得到的消息大概是这样 (抱歉,不方便截图)
测试消息开始 @被通知人 测试消息结束
但是使用 Jenkins 钉钉插件,得到的的消息是这样的
测试消息开始 @被通知人 测试消息结束
@被通知人
官方文档也有样例: https://jenkinsci.github.io/dingtalk-plugin/guide/freestyle.html
执行人是插件内置的字段,下面那一行是额外配置的 @ 信息
执行人是插件内置的字段,下面那一行是额外配置的 @ 信息
恩,如果是用 Pipeline script 呢?比如:
pipeline {
agent any
stages {
stage('Hello') {
steps {
dingtalk(
robot: 'robot-01',
type: 'MARKDOWN',
title: '测试标题',
text: ['测试消息开始 @139xxxxxxxx 测试消息结束'],
at: ['139xxxxxxxx']
)
}
}
}
}
这种期望得到的通知消息是:
测试消息开始 @被通知人 测试消息结束
而实际是:
测试消息开始 @被通知人 测试消息结束
@被通知人
如上所述,使用钉钉开发文档的 Python 示例去调用发消息的接口,可以得到期望的通知消息。