oktopus/backend/services/socketio/server.js
2023-06-18 22:25:16 -03:00

39 lines
902 B
JavaScript

const express = require('express');
const app = express();
const PORT = 5000;
const http = require('http').Server(app);
const cors = require('cors');
const io = require('socket.io')(http, {
cors: {
origin: "http://localhost:3000"
}
});
app.use(cors());
let users = []
io.on('connection', (socket) => {
console.log(`🚀: ${socket.id} user just connected!`);
const sessionId = socket.id
socket.on("newuser", (data) => {
users.push(data)
console.log(data)
console.log("total users: ", users)
io.emit('users', users)
})
socket.on('disconnect', () => {
console.log('🔥: A user disconnected');
users.splice(users.findIndex(x => x.id === sessionId), 1);
console.log("users after disconection: ", users)
io.emit('users', users)
});
});
http.listen(PORT, () => {
console.log(`Server listening on ${PORT}`);
});