From 12ad108b7e0cdcb4bfa6c976a4633cfa1c4a3eff Mon Sep 17 00:00:00 2001 From: Christian Hofmaier Date: Thu, 18 Apr 2019 00:11:38 +0000 Subject: [scheduler] schedule events on startup --- server/bin/scheduler.js | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) (limited to 'server/bin') diff --git a/server/bin/scheduler.js b/server/bin/scheduler.js index ddb96d8..f13e329 100644 --- a/server/bin/scheduler.js +++ b/server/bin/scheduler.js @@ -11,11 +11,20 @@ socket.on('message', calcNextWake) const runningTimeouts = {} +scheduleAllEvents() + +async function scheduleAllEvents () { + var events = await db.event.findAll() + events.forEach(event => { + if (event.wakeonlan) calcNextWake(event.id) + }) +} + async function calcNextWake (id) { id = id.toString() var event = await db.event.findOne({ where: { id: id }, include: ['groups', 'clients'] }) - // Event got deleted + // Event got deleted or was updated to be not wakeonlan anymore if (event === null || !event.wakeonlan) { clearTimeout(runningTimeouts[id]) delete runningTimeouts[id] @@ -50,6 +59,7 @@ async function calcNextWake (id) { }, nextWake) */ } + if (nextWake > 0) console.log('Scheduled event ' + event.name + ' in ' + nextWake + 'ms') } // Wake all clients of event -- cgit v1.2.3-55-g7522