From 66d70cbfe49d746da1b5d2a34b10408e8a6edf9e Mon Sep 17 00:00:00 2001 From: qvalentin Date: Tue, 25 Jul 2023 13:28:50 +0200 Subject: [PATCH] Revert "Use jotai for websocket" This reverts commit cc1808c9ec7c2331c189a19a828d77f953b4d1c2. --- frontend/src/hooks/useRoomName.ts | 2 +- frontend/src/hooks/useWebSocketConnection.ts | 23 +++++++------------- 2 files changed, 9 insertions(+), 16 deletions(-) diff --git a/frontend/src/hooks/useRoomName.ts b/frontend/src/hooks/useRoomName.ts index 14e3c1f..1cf2422 100644 --- a/frontend/src/hooks/useRoomName.ts +++ b/frontend/src/hooks/useRoomName.ts @@ -1,5 +1,5 @@ import { atom, useAtom } from 'jotai' -import { useCallback } from 'react' +import { useCallback, useState } from 'react' const roomNameAtom = atom(getRoomNameFromUrl()) diff --git a/frontend/src/hooks/useWebSocketConnection.ts b/frontend/src/hooks/useWebSocketConnection.ts index 5450cd6..77aa0b1 100644 --- a/frontend/src/hooks/useWebSocketConnection.ts +++ b/frontend/src/hooks/useWebSocketConnection.ts @@ -1,19 +1,19 @@ -import { atom, useAtom } from 'jotai' -import { useCallback, useEffect } from 'react' +import { useCallback, useState } from 'react' import { WEBSOCKET_URL } from '../background/constants' import { UserInfo } from '../components/jitsi/types' +const createWebSocketConnection = (userInfo: UserInfo) => { + const webSocket = new WebSocket(WEBSOCKET_URL) + console.log('[Rooms] createWebSocketConnection') + webSocket.addEventListener('open', (_: Event) => webSocket.send(JSON.stringify(userInfo))) -const webSocket = new WebSocket(WEBSOCKET_URL) -const webSocketConnectionAtom = atom(webSocket) + return webSocket +} function useWebSocketConnection(userInfo: UserInfo) { console.log('[Rooms] useWebSocketConnection') - const [webSocketConnection] = useAtom(webSocketConnectionAtom) - useEffect(() => { - sendMessageNowOrLater(webSocketConnection, JSON.stringify(userInfo)) - }, [webSocketConnection, userInfo]); + const [webSocketConnection] = useState(() => createWebSocketConnection(userInfo)) const sendMessage = useCallback( (message: string) => { @@ -41,11 +41,4 @@ function useWebSocketConnection(userInfo: UserInfo) { return { onMessage, sendMessage, disconnect } } -const sendMessageNowOrLater = (webSocket: WebSocket, message: string) => { - if (webSocket.readyState !== WebSocket.OPEN) { - return webSocket.addEventListener('open', (_: Event) => webSocket.send(message)) - } - webSocket.send(message) -} - export default useWebSocketConnection