Server-side events (SSE) namesto pollinga #14
This commit is contained in:
@@ -648,9 +648,24 @@ document.addEventListener('keydown', (e) => {
|
||||
updateState(true);
|
||||
requestWakeLock();
|
||||
|
||||
// osveževanje za sinhronizacijo med več napravami
|
||||
setInterval(() => {
|
||||
updateState(false);
|
||||
}, 1000);
|
||||
// SSE osveževanje za sinhronizacijo med več napravami
|
||||
function setupSSE() {
|
||||
const evtSource = new EventSource("/api/events");
|
||||
|
||||
evtSource.onmessage = function(event) {
|
||||
console.log("SSE dogodek:", event.data);
|
||||
if (event.data === "refresh content") {
|
||||
updateState(false);
|
||||
}
|
||||
};
|
||||
|
||||
evtSource.onerror = function(err) {
|
||||
console.error("SSE napaka, ponovni poskus čez 5s...", err);
|
||||
evtSource.close();
|
||||
setTimeout(setupSSE, 5000);
|
||||
};
|
||||
}
|
||||
|
||||
setupSSE();
|
||||
|
||||
console.log('JavaScript inicializacija zaključena');
|
||||
Reference in New Issue
Block a user