implemented a new telemetry heartbeat and client-side error reporting system for MarianumConnect; replaced legacy mhsl.eu user index updates with a POST me/telemetry heartbeat using stable, securely-stored device identifiers; integrated global Flutter and platform error handlers to report uncaught exceptions with session-based deduplication and rate limiting.

This commit is contained in:
2026-07-06 22:11:23 +02:00
parent 2be5051d12
commit ddbb3fbc19
9 changed files with 238 additions and 97 deletions
+2 -2
View File
@@ -7,7 +7,7 @@ import 'package:flutter_bloc/flutter_bloc.dart';
import 'package:persistent_bottom_nav_bar_v2/persistent_bottom_nav_bar_v2.dart';
import 'api/marianumconnect/queries/get_breakers/get_breakers_response.dart';
import 'api/mhsl/server/user_index/update/update_userindex.dart';
import 'api/marianumconnect/queries/telemetry_heartbeat/telemetry_heartbeat.dart';
import 'main.dart';
import 'model/data_cleaner.dart';
import 'notification/notification_controller.dart';
@@ -171,7 +171,7 @@ class _AppState extends State<App> with WidgetsBindingObserver {
if (mounted) setState(() {});
});
UpdateUserIndex.index();
TelemetryHeartbeat.report();
// A refreshed FCM token invalidates the existing push subscription — the
// NC device identifier stays stable, so we simply re-register (NC first,