Update sendNotify.js

企业微信应用消息的推送支持
This commit is contained in:
huang28
2020-12-28 22:59:44 +08:00
parent 961060a71e
commit 9be2269f5f

View File

@ -48,6 +48,11 @@ let DD_BOT_SECRET = '';
//注此处设置github action用户填写到Settings-Secrets里面(Name输入QYWX_KEY)
let QYWX_KEY = '';
// =======================================企业微信应用消息通知设置区域===========================================
//此处填你企业微信应用消息的 值(详见文档 https://work.weixin.qq.com/api/doc/90000/90135/90236)依次填上corpid的值,corpsecret的值,touser的值,agentid的值注意用,号隔开例如wwcff56746d9adwers,B-791548lnzXBE6_BWfxdf3kSTMJr9vFEPKAbh6WERQ,mingcheng,1000001
//注此处设置github action用户填写到Settings-Secrets里面(Name输入QYWX_AM)
let QYWX_AM = '';
// =======================================iGot聚合推送通知设置区域===========================================
//此处填您iGot的信息(推送key例如https://push.hellyw.com/XXXXXXXX)
//注此处设置github action用户填写到Settings-Secrets里面Name输入IGOT_PUSH_KEY
@ -108,6 +113,10 @@ if (process.env.QYWX_KEY) {
QYWX_KEY = process.env.QYWX_KEY;
}
if (process.env.QYWX_AM) {
QYWX_AM = process.env.QYWX_AM;
}
if (process.env.IGOT_PUSH_KEY) {
IGOT_PUSH_KEY = process.env.IGOT_PUSH_KEY
}
@ -131,6 +140,7 @@ async function sendNotify(text, desp, params = {}) {
await tgBotNotify(text, desp);//telegram 机器人
await ddBotNotify(text, desp);//钉钉机器人
await qywxBotNotify(text, desp); //企业微信机器人
await qywxamNotify(text, desp); //企业微信应用消息推送
await iGotNotify(text, desp, params);//iGot
await CoolPush(text, desp);//QQ酷推
}
@ -406,6 +416,68 @@ function qywxBotNotify(text, desp) {
});
}
function qywxamNotify(text, desp) {
return new Promise(resolve => {
if (QYWX_AM) {
var QYWX_AM_AY = QYWX_AM.split(',');
const options_accesstoken = {
url: `https://qyapi.weixin.qq.com/cgi-bin/gettoken`,
json: {
corpid:`${QYWX_AM_AY[0]}`,
corpsecret:`${QYWX_AM_AY[1]}`,
},
headers: {
'Content-Type': 'application/json',
},
};
$.post(options_accesstoken, (err, resp, data) => {
var json = JSON.parse(data);
accesstoken = json.access_token;
const options = {
url: `https://qyapi.weixin.qq.com/cgi-bin/message/send?access_token=${accesstoken}`,
json: {
touser:`${QYWX_AM_AY[2]}`,
agentid:`${QYWX_AM_AY[3]}`,
msgtype: 'textcard',
textcard: {
title: `${text}`,
description: `${desp}`,
url: '127.0.0.1',
btntxt: '更多'
},
safe:'0',
},
headers: {
'Content-Type': 'application/json',
},
};
$.post(options, (err, resp, data) => {
try {
if (err) {
console.log('企业微信应用消息发送通知消息失败!!\n');
console.log(err);
} else {
data = JSON.parse(data);
if (data.errcode === 0) {
console.log('企业微信应用消息发送通知消息完成。\n');
} else {
console.log(`${data.errmsg}\n`);
}
}
} catch (e) {
$.logErr(e, resp);
} finally {
resolve(data);
}
});
});
} else {
console.log('您未提供企业微信应用消息推送所需的QYWX_AM取消企业微信应用消息推送消息通知\n');
resolve();
}
});
}
function iGotNotify(text, desp, params={}){
return new Promise(resolve => {
if (IGOT_PUSH_KEY) {