Add VPN session monitoring service
This commit is contained in:
26
lib/services/vpn_session_monitor.dart
Normal file
26
lib/services/vpn_session_monitor.dart
Normal file
@@ -0,0 +1,26 @@
|
||||
import 'dart:isolate';
|
||||
import 'dart:math';
|
||||
import 'package:waylume_server/services/vpn_session_service.dart';
|
||||
|
||||
void initVpnSessionMonitor() {
|
||||
// Run this on a separate thread
|
||||
Isolate.spawn((_) async {
|
||||
|
||||
// To avoid server deadlock, add random delay
|
||||
await Future.delayed(Duration(seconds: Random().nextInt(10)));
|
||||
|
||||
print('VPN Session Monitor started');
|
||||
|
||||
while (true) {
|
||||
try {
|
||||
await VpnSessionService.detectSessions();
|
||||
} catch (e) {
|
||||
print('Error in VPN session monitor: $e');
|
||||
}
|
||||
|
||||
// Check for sessions every 60 seconds
|
||||
await Future.delayed(Duration(seconds: 60));
|
||||
}
|
||||
|
||||
}, null);
|
||||
}
|
||||
Reference in New Issue
Block a user