websocket.js 709 octets
Newer Older
Quentin Vauthier's avatar
Quentin Vauthier a validé
import { WebSocketServer } from 'ws';
import * as dotenv from 'dotenv'
Quentin Vauthier's avatar
Quentin Vauthier a validé
dotenv.config();
 
// Creating a new websocket server
Quentin Vauthier's avatar
Quentin Vauthier a validé
const wss = new WebSocketServer({ port: process.env.WS_PORT})
Quentin Vauthier's avatar
Quentin Vauthier a validé
 
// Creating connection using websocket
wss.on("connection", ws => {
    ws.id = crypto.randomUUID()
Quentin Vauthier's avatar
Quentin Vauthier a validé
    console.log(`New client connected (${ws.id})`)
Quentin Vauthier's avatar
Quentin Vauthier a validé
    // handling what to do when clients disconnects from server
    ws.on("close", () => {
Quentin Vauthier's avatar
Quentin Vauthier a validé
        console.log(`${ws.id} disconnected`)
Quentin Vauthier's avatar
Quentin Vauthier a validé
    });
    // handling client connection error
    ws.onerror = function () {
        console.log("Some WS Error occurred")
Quentin Vauthier's avatar
Quentin Vauthier a validé
    }
});
console.log(`The WebSocket server is running on port ${process.env.WS_PORT}`);
Quentin Vauthier's avatar
Quentin Vauthier a validé
export default wss