From 30f8ab773f04eb79b5e8e5d19889577c6a2c72d9 Mon Sep 17 00:00:00 2001 From: "pakintada@gmail.com" Date: Thu, 23 Apr 2026 11:37:19 +0700 Subject: [PATCH] fix: multiple ws connect Signed-off-by: pakintada@gmail.com --- ISSUES.txt | 3 ++- src/lib/components/app-account-select.svelte | 8 ++++---- src/lib/core/handlers/ws_messageSender.ts | 2 +- src/lib/core/stores/websocketStore.ts | 6 +++--- src/routes/+layout.svelte | 6 +----- 5 files changed, 11 insertions(+), 14 deletions(-) diff --git a/ISSUES.txt b/ISSUES.txt index 8fce82a..35f54c2 100644 --- a/ISSUES.txt +++ b/ISSUES.txt @@ -8,7 +8,8 @@ Idea, Issue, Work Tracking - [] #2: Send change value from editing in recipe to machine - [] #3: Save value to recipe - [] #5: revert value on close dialog recipe - +- [] #6: display all recipes with materials from csv [material usages with product code] +- [] #7: material & menu creation [Rejected] - [] #4: From #1, will do sync value from server, so that user could save their current edit too diff --git a/src/lib/components/app-account-select.svelte b/src/lib/components/app-account-select.svelte index 319a787..7c107ba 100644 --- a/src/lib/components/app-account-select.svelte +++ b/src/lib/components/app-account-select.svelte @@ -49,10 +49,10 @@ let socket = get(socketStore); try { - if (socket) { - socket.close(1000, 'logout'); - } - } catch (e) {} + socket?.close(1000, 'logout'); + } catch (e) { + console.log('error on disconnect', e); + } socketStore.set(null); if (browser && 'cookieStore' in window) await cookieStore.delete('logged_in'); diff --git a/src/lib/core/handlers/ws_messageSender.ts b/src/lib/core/handlers/ws_messageSender.ts index d42d93b..72e0dc6 100644 --- a/src/lib/core/handlers/ws_messageSender.ts +++ b/src/lib/core/handlers/ws_messageSender.ts @@ -11,7 +11,7 @@ type CommandRequest = 'sheet' | 'command'; function getServiceName(cmdReq: CommandRequest) { switch (cmdReq) { case 'sheet': - return 'sheet-api'; + return 'sheet-service'; case 'command': return 'command'; } diff --git a/src/lib/core/stores/websocketStore.ts b/src/lib/core/stores/websocketStore.ts index 49c3efb..8dd831d 100644 --- a/src/lib/core/stores/websocketStore.ts +++ b/src/lib/core/stores/websocketStore.ts @@ -51,10 +51,10 @@ export function connectToWebsocket() { socketStore.set(null); socket = null; - if (auth.currentUser) { - // console.log('try reconnect websocket ...'); + if (auth.currentUser && !socket) { + console.log('try reconnect websocket ...'); // retry again - setTimeout(() => connectToWebsocket(), 5000); + setTimeout(() => connectToWebsocket(), 30000); } }); diff --git a/src/routes/+layout.svelte b/src/routes/+layout.svelte index 8e13784..f8e97fe 100644 --- a/src/routes/+layout.svelte +++ b/src/routes/+layout.svelte @@ -34,7 +34,7 @@ onAuthStateChanged(auth, async function (s) { authStore.set(s); - authInitialized.set(true); + authInitialized.set(true); if (s) { if (browser && 'cookieStore' in window) await cookieStore.set('logged_in', 'true'); else { @@ -51,10 +51,6 @@ return authStore.subscribe(async function (user) { // console.log(`store get ${JSON.stringify(user)}`); - if (user != null) { - connectToWebsocket(); - } - // reloading permissions if (get(currentPermissions).length == 0 && user != null) { // need update