const schedule = require('node-schedule');
|
const http = require("http");
|
const Dataapi = require("../models/dataapi");
|
const mysql = require("../utils/mysql_db");
|
|
// 定义规则
|
let rule = new schedule.RecurrenceRule();
|
// rule.minute = [1,11,21,31,41,51]
|
rule.second = [30, 60]; // 每隔 10 秒执行一次
|
|
var deviceMap = {};
|
|
var rule1 = new schedule.RecurrenceRule();
|
var times1 = [1, 6, 11, 16, 21, 26, 31, 36, 41, 46, 51, 56];
|
rule1.second = times1;
|
// schedule.scheduleJob(rule1, function () {
|
// httpGet();
|
// });
|
|
|
module.exports = {
|
// http://192.168.119.100:4500/dataapi/recordMonitorOpt?bid=setTempRecord&frequency=648&userid=admin&monitorpointId=22&msg=aaa&recordminitus=10&success=1&requesturl=aa&flvurl=aa
|
// 参数:bid:setTempRecord frequency 录制频率 userid 用户id monitorpointid 当前监测点id requesturl 向设备端发起api指令 success msg flvurl
|
async job_() {
|
// schedule.scheduleJob(rule, () => {
|
// //待录清单 toRecordList
|
// params = {"bid":"toRecordList","frequencystr":"1557","wdate":"2021-08-17","whour":"21"};
|
// Dataapi.dealData(params).then((result)=> {
|
// //call proc_create_temp_record('#{frequency}','#{userid}','#{requesturl}','#{monitorpointId}','#{success}','#{msg}','#{flvurl}')
|
// for (let index = 0; index < result[0].length; index++) {
|
// let element = result[0][index];
|
// let params_ = {"bid":"setTempRecord","userid":"erupt","requesturl":"system","success":"","msg":"","flvurl":""};
|
// params_['monitorpointId'] = element.monitorpoint_id
|
// params_['frequency'] = element.frequency
|
// Dataapi.autoRecording(params_).then((rs)=> {
|
// console.log("rs==============");
|
// console.log(rs);
|
// });
|
|
// }
|
|
// });
|
|
// });
|
},
|
async getDeviceStatus() {
|
let sqlstr = `select B.monitorpointId,B.status,i.monitorpointName from (select *
|
from (select * FROM t_monitorpoint_status order by time desc limit 100) A
|
group by monitorpointId
|
) B left join t_monitorpoint_info i on B.monitorpointId=i.monitorpointId `;
|
let data_rets = await mysql.query_data(sqlstr, 'remote', null);
|
return JSON.parse(JSON.stringify(data_rets))
|
// let deviceMsgs = [];
|
// for (let index = 0; index < data_rets.length; index++) {
|
// let element = data_rets[index];
|
// if(!deviceMap[element.monitorpointId]) {
|
// deviceMap[element.monitorpointId] = element;
|
// continue;
|
// }
|
// // if(deviceMap[element.monitorpointId].status != element.status) {
|
// let msgstr = element.monitorpointName + (element.status>0 ? "恢复在线" : "离线");
|
// deviceMsgs[deviceMsgs.length] = {
|
// "monitorpointId":element.monitorpointId,
|
// "status":element.status,
|
// "msg": msgstr
|
// }
|
// deviceMap[element.monitorpointId] = element;
|
// // }
|
// }
|
// return deviceMsgs;
|
},
|
// async deviceChanges() {
|
// await this.getDeviceStatus()
|
// var p = new Promise(function (resolve, reject) {
|
// resolve(this.getDeviceStatus());
|
// });
|
// return p;
|
// },
|
|
|
};
|
|
|
// schedule.scheduleJob('5 5 * * * *', function () {
|
// httpGet();
|
// });
|
|
function httpGet() {
|
var uri = `http://www.baidu.com`;
|
http.get(uri, function (res) {
|
console.log("访问个人微博状态码: " + res.statusCode);
|
}).on('error', function (e) {
|
console.log("个人微博 error: " + e.message);
|
});
|
}
|