mirror of
https://github.com/sakaljurgis/pvpn-transmission.git
synced 2026-07-08 20:47:41 +00:00
add tracker server, esm, refactor
This commit is contained in:
+15
-3
@@ -1,12 +1,24 @@
|
||||
import { setPortFlow } from './set-port-flow';
|
||||
import { settings } from './settings';
|
||||
import { trackerServer } from './tracker/tracker';
|
||||
import { kvDataStorage } from './services/kv-data-storage';
|
||||
import { onTrackerAnnounce } from './tracker-announce-flow';
|
||||
|
||||
const isWorker = process.argv[2] === 'worker';
|
||||
|
||||
if (isWorker) {
|
||||
//initial timeout is in case of a crash to not flood everything
|
||||
console.log(`Starting worker, first check in ${settings.updateIntervalMs/1000}s`);
|
||||
setTimeout(worker, settings.updateIntervalMs);
|
||||
trackerServer.on('announce', onTrackerAnnounce);
|
||||
|
||||
const lastRun = kvDataStorage.get<number>('lastRun') || 0;
|
||||
const sinceLastRun = Date.now() - lastRun;
|
||||
if (sinceLastRun > settings.updateIntervalMs) {
|
||||
console.log(`Starting worker, check now`);
|
||||
worker();
|
||||
} else {
|
||||
console.log(`Starting worker, first check in ${(settings.updateIntervalMs - sinceLastRun)/1000}s`);
|
||||
setTimeout(worker, settings.updateIntervalMs - sinceLastRun);
|
||||
}
|
||||
|
||||
} else {
|
||||
setPortFlow()
|
||||
.then(() => console.log('All done'))
|
||||
|
||||
Reference in New Issue
Block a user