Files
myspeed/server/tasks/timer.js
2022-06-11 01:05:34 +02:00

26 lines
606 B
JavaScript

const pauseController = require('../controller/pause');
const schedule = require('node-schedule');
let job;
module.exports.startTimer = () => {
const rule = new schedule.RecurrenceRule();
rule.minute = 0
job = schedule.scheduleJob(rule, () => this.runTask());
}
module.exports.runTask = async () => {
if (pauseController.currentState) {
console.warn("Speedtests currently paused. Trying again later...");
return;
}
await require('../tasks/speedtest').create("auto");
}
module.exports.stopTimer = () => {
job.gracefulShutdown();
}
module.exports.job = job;