You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
957 B

const express = require('express');
const app = express();
const PORT = process.env.PORT || 3000;
const http = require('http').Server(app);
const socketserver = require('socket.io')(http);
app.use(express.static('public'));
let connectedUsers = 0;
let currentComplete = 0;
socketserver.on('connection', (socket)=>{
connectedUsers++;
socketserver.emit('users connected', connectedUsers);
socket.on('disconnect', ()=>{
connectedUsers--;
socketserver.emit('users connected', connectedUsers);
});
socket.on('prompt sent', (prompt)=>{
currentComplete = 0;
socketserver.emit('prompt sent', prompt);
});
socket.on('prompt completed', ()=>{
currentComplete++;
socketserver.emit('prompt completed', currentComplete);
});
socket.on('remove completed', ()=>{
currentComplete--;
socketserver.emit('prompt completed', currentComplete);
});
});
http.listen(PORT);