diff --git a/templates/adsb_dashboard.html b/templates/adsb_dashboard.html
index 47970bb..9917cf2 100644
--- a/templates/adsb_dashboard.html
+++ b/templates/adsb_dashboard.html
@@ -3359,6 +3359,22 @@ sudo make install
sidebar.classList.add('collapsed');
}
updateAcarsFreqCheckboxes();
+
+ // Check if ACARS is already running (e.g. after page reload)
+ fetch('/acars/status')
+ .then(r => r.json())
+ .then(data => {
+ if (data.running) {
+ isAcarsRunning = true;
+ acarsMessageCount = data.message_count || 0;
+ document.getElementById('acarsCount').textContent = acarsMessageCount;
+ document.getElementById('acarsToggleBtn').textContent = '■ STOP ACARS';
+ document.getElementById('acarsToggleBtn').classList.add('active');
+ document.getElementById('acarsPanelIndicator').classList.add('active');
+ startAcarsStream(false);
+ }
+ })
+ .catch(() => {});
});
function updateAcarsFreqCheckboxes() {
@@ -3542,6 +3558,11 @@ sudo make install
acarsEventSource.onerror = function() {
console.error('ACARS stream error');
+ setTimeout(() => {
+ if (isAcarsRunning) {
+ startAcarsStream(acarsCurrentAgent !== null);
+ }
+ }, 2000);
};
// Start polling fallback for agent mode
@@ -3872,6 +3893,11 @@ sudo make install
vdl2EventSource.onerror = function() {
console.error('VDL2 stream error');
+ setTimeout(() => {
+ if (isVdl2Running) {
+ startVdl2Stream(vdl2CurrentAgent !== null);
+ }
+ }, 2000);
};
// Start polling fallback for agent mode
@@ -4163,7 +4189,7 @@ sudo make install
URL.revokeObjectURL(url);
}
- // Populate VDL2 device selector
+ // Populate VDL2 device selector and check running status
document.addEventListener('DOMContentLoaded', () => {
fetch('/devices')
.then(r => r.json())
@@ -4185,6 +4211,22 @@ sudo make install
}
}
});
+
+ // Check if VDL2 is already running (e.g. after page reload)
+ fetch('/vdl2/status')
+ .then(r => r.json())
+ .then(data => {
+ if (data.running) {
+ isVdl2Running = true;
+ vdl2MessageCount = data.message_count || 0;
+ document.getElementById('vdl2Count').textContent = vdl2MessageCount;
+ document.getElementById('vdl2ToggleBtn').innerHTML = '■ STOP VDL2';
+ document.getElementById('vdl2ToggleBtn').classList.add('active');
+ document.getElementById('vdl2PanelIndicator').classList.add('active');
+ startVdl2Stream(false);
+ }
+ })
+ .catch(() => {});
});
// ============================================