diff --git a/frontend/src/store/index.js b/frontend/src/store/index.js index fdfc191..1e2eae5 100644 --- a/frontend/src/store/index.js +++ b/frontend/src/store/index.js @@ -128,36 +128,35 @@ const store = createStore({ if (currentDaemonSocket) { currentDaemonSocket.disconnect(); } - console.log('🔌 Initializing Daemon WebSocket connection to:', import.meta.env.VITE_DAEMON_SOCKET); + console.log('🔌 Initializing Daemon WebSocket connection to:', import.meta.env.VITE_API_BASE_URL); try { - const daemonSocket = new WebSocket(import.meta.env.VITE_DAEMON_SOCKET); + // Use Socket.io for daemon connection instead of native WebSocket + const daemonSocket = io(import.meta.env.VITE_API_BASE_URL, { + secure: true, + transports: ['websocket', 'polling'] + }); - daemonSocket.onopen = () => { - console.log('✅ Daemon WebSocket connected successfully'); - const payload = JSON.stringify({ - event: 'setUserId', - data: { userId: state.user.id } - }); - daemonSocket.send(payload); - }; + daemonSocket.on('connect', () => { + console.log('✅ Daemon Socket.io connected successfully'); + daemonSocket.emit('setUserId', state.user.id); + }); - daemonSocket.onclose = (event) => { - console.warn('❌ Daemon WebSocket disconnected:', event.reason); + daemonSocket.on('disconnect', (reason) => { + console.warn('❌ Daemon Socket.io disconnected:', reason); retryConnection(connectDaemonSocket); - }; + }); - daemonSocket.onerror = (error) => { - console.error('❌ Daemon WebSocket error:', error); + daemonSocket.on('connect_error', (error) => { + console.error('❌ Daemon Socket.io error:', error); retryConnection(connectDaemonSocket); - }; + }); - daemonSocket.addEventListener('message', (event) => { - const message = event.data; - if (message === "ping") { - daemonSocket.send("pong"); + daemonSocket.on('message', (data) => { + if (data === "ping") { + daemonSocket.emit("pong"); } else { try { - const data = JSON.parse(message); + const parsedData = JSON.parse(data); } catch (error) { console.error("Error parsing message:", error); } @@ -166,8 +165,8 @@ const store = createStore({ commit('setDaemonSocket', daemonSocket); } catch (error) { - console.error('❌ Failed to create Daemon WebSocket:', error); - console.error('❌ URL attempted:', import.meta.env.VITE_DAEMON_SOCKET); + console.error('❌ Failed to create Daemon Socket.io:', error); + console.error('❌ URL attempted:', import.meta.env.VITE_API_BASE_URL); retryConnection(connectDaemonSocket); } };