diff --git a/src/public/chat.js b/src/public/chat.js index c058591..26bf244 100644 --- a/src/public/chat.js +++ b/src/public/chat.js @@ -148,3 +148,12 @@ const fromHexString = (hexString) => const toHexString = (bytes) => bytes.reduce((str, byte) => str + byte.toString(16).padStart(2, '0'), ''); + +export async function reconnectSocket() { + socket.disconnect(); + console.log("Socket disconnected."); + setTimeout(() => { + socket.connect(); + console.log("Socket reconnected."); + }, 100); +} diff --git a/src/public/popups-logged.js b/src/public/popups-logged.js index 90cea81..e92ebf6 100644 --- a/src/public/popups-logged.js +++ b/src/public/popups-logged.js @@ -1,4 +1,5 @@ import { render_room } from "./rooms.js"; +import { reconnectSocket } from "./chat.js"; // handle key presses (close/confirm) document.addEventListener("keydown", async function(event) { @@ -48,6 +49,7 @@ export async function addConfirm() { inputFieldPublicKey.value = ''; const { roomid, peer } = await response.json(); render_room(roomid, peer); + reconnectSocket(); } addPopup.style.display = 'none'; }