| const io = require('socket.io-client'); |
|
|
| const SOCKET_SERVER_URL = process.env.SOCKET_SERVER_URL || 'https://al-asfar-mgzon-socket-server.hf.space'; |
|
|
| let socketClient = null; |
|
|
| function getSocketClient() { |
| if (!socketClient) { |
| socketClient = io(SOCKET_SERVER_URL, { |
| transports: ['websocket', 'polling'], |
| reconnection: true, |
| reconnectionAttempts: 10, |
| reconnectionDelay: 1000, |
| reconnectionDelayMax: 5000, |
| }); |
|
|
| socketClient.on('connect', () => { |
| console.log('✅ REST API connected to Socket.IO server'); |
| }); |
|
|
| socketClient.on('connect_error', (err) => { |
| console.error('❌ REST API Socket.IO connection error:', err.message); |
| }); |
|
|
| socketClient.on('disconnect', () => { |
| console.warn('⚠️ REST API disconnected from Socket.IO server'); |
| }); |
| } |
| return socketClient; |
| } |
|
|
| module.exports = getSocketClient; |