import { BackendWebSocketUrl } from '@/properties/Сonfig.js'; import { eventBus } from "@/main"; import { GetCookie } from "@/assets/js/storage/CookieStorage.js"; let webSocket; export function ConnectToChat() { try { if (webSocket && webSocket.readyState === WebSocket.OPEN) { return; } webSocket = new WebSocket(BackendWebSocketUrl); webSocket.onopen = function () { console.log('Connection established'); }; webSocket.onmessage = function (event) { try { const dataObject = JSON.parse(event.data); if (dataObject && Object.prototype.hasOwnProperty.call(dataObject, 'SpUserName') && Object.prototype.hasOwnProperty.call(dataObject, 'Message')) { eventBus.emit('dataChat', event.data); return; } if (dataObject.MessageType == 'DoubleGameState') { eventBus.emit('doubleGame', event.data) return; } if (dataObject.MessageType == "CrashGameState") { eventBus.emit('crash', event.data); return; } if (Array.isArray(dataObject.CurrentGame.PlayerList)) { eventBus.emit('jackpotGameTik', event.data); return; } } catch (error) { void (error); } }; webSocket.onclose = function () { webSocket = new WebSocket(BackendWebSocketUrl); console.log('Connection closed and reconnected'); }; webSocket.onerror = function (event) { console.error('WebSocket Error:', event); }; } catch (error) { console.error('Error in ConnectToChat:', error); } } export function SendMessageToChat(message) { try { if (!GetCookie("SpUserName") && !GetCookie("AUTHTOKEN") && !GetCookie("SearchToken")) { return; } const userCredentials = { SearchToken: GetCookie("SearchToken"), AUTHTOKEN: GetCookie("AUTHTOKEN") }; const messageObject = { UserCredentials: userCredentials, Message: message, MessageType: "Chat" }; webSocket.send(JSON.stringify(messageObject)); } catch (error) { console.error('Error in ConnectToChat:', error); } }