在监控端新建一个监视函数spy_node()
function spy_node(){
var requestData={
"touser":"xxxxxxx",//接收人openid
"template_id":"xxxxxxxxxxxxxxxxxx",//微信推送模板id
"url":'',//模板链接
"data":{ //推送消息
"first": {"value":'重要提醒!服务器已挂!',"color":"#173177"},
"keyword1":{"value":"01","color":"#173177"},
"keyword2": {"value":"元","color":"#173177"},
"keyword3": {"value":new Date().toLocaleDateString(),"color":"#173177"},
"remark":{"value":'请尽快处理',"color":"#173177"}
}
};
request({
url: "https://www.example.cn/token",//获取公众号access_token,此处业务后台应已获取access_token并存储,该请求实际为获取业务后台数据
method: "POST",json: true,headers: {"content-type": "application/json",},
body: {},
}, function(error, response, body) {
if (!error && response.statusCode == 200) {
//每次请求成功,更新存储access_token
db.update("spy_node",{"id":"access_token"},{$set:{"access_token":body.access_token}},function(err1,result1){
if(err1){console.log(err1);return;}
})
}else{
//请求不成功,后台发送微信推送给接收者
db.find("spy_node",{},function(err,result){
if(err){console.log(err);return;}
if(result.length<=0){return;}
request({//此处url为微信官方API
url: "https://api.weixin.qq.com/cgi-bin/message/template/send?access_token="+result[0].access_token,
method: "POST",json: true,headers: {"content-type": "application/json",},
body: requestData,
}, function(error, response, body) {
if (!error && response.statusCode == 200) {}
});
})
}
});
}
spy_xpj();
setInterval(function(){spy_node()},60000);//设置定时器监控数据返回情况,时间可自定义。
欢迎指正和共同探讨。