feat: Enable stats by default and enrich public dashboard

This commit is contained in:
Janez T
2026-04-03 22:24:09 +02:00
parent 59931f402a
commit 5feb07aad7
9 changed files with 422 additions and 42 deletions

View File

@@ -139,6 +139,7 @@ class TrafficStatsReportingService extends ChangeNotifier {
static final Uri dashboardUri = Uri.parse(workerBaseUrl);
static final Uri ingestUri = Uri.parse('$workerBaseUrl/api/ingest');
static const bool defaultEnabled = true;
static const int defaultIntervalMinutes = 5;
static const String _enabledKey = 'traffic_stats_reporting_enabled';
static const String _legacyIntervalKey =
@@ -161,7 +162,7 @@ class TrafficStatsReportingService extends ChangeNotifier {
String? Function()? _deviceKey6Provider;
Timer? _retryTimer;
String? _appVersion;
bool _enabled = false;
bool _enabled = defaultEnabled;
DateTime? _lastSuccessAt;
String? _lastError;
bool _isInitialized = false;
@@ -191,7 +192,7 @@ class TrafficStatsReportingService extends ChangeNotifier {
}) async {
_deviceKey6Provider = deviceKey6Provider;
final prefs = await _prefsProvider();
_enabled = prefs.getBool(_enabledKey) ?? false;
_enabled = prefs.getBool(_enabledKey) ?? defaultEnabled;
if (prefs.containsKey(_legacyIntervalKey)) {
await prefs.remove(_legacyIntervalKey);
}