我想的是再jenkins触发构建成功的时候,自动触发钉钉的消息通知,另外还有一个钉钉自动发送消息的功能,
下面是钉钉自动发送消息的服务,钉钉创建机器人我就不赘述了:
const express = require('express');
const request = require('request');
const cjs = require('crypto');
const base64 = require('crypto-js/enc-base64');
const app = express();
const port = 3000;
let dingdingUrl = 'https://oapi.dingtalk.com/robot/send?access_token=****';
const header = {
"Content-type": "application/json",
"Charset": "UTF-8"
}
const messageData = {"msgtype": "text","text": {"content":"我就是我, 是不一样的烟火"}}
const secret = '钉钉上机器人的加签字符串';
const timestamp = new Date().getTime();
const stringToSign = timestamp + '\n' + secret;
const base = cjs.createHmac('sha256',secret).update(stringToSign).digest('base64');
const sing = encodeURIComponent(base);
dingdingUrl = dingdingUrl + `×tamp=${timestamp}&sign=${sing}`;
const options = {
hostname: dingdingUrl,
header,
}
console.log('dingurl is ',dingdingUrl);
request.post(
dingdingUrl,
{
json: messageData,
encoding: 'utf-8',
headers: {
'Content-Type': 'application/json'
}
},
function(error,res,body) {
if(!error && res.statusCode == 200) {
console.log('body is ',body);
}
}
)