Initial commit
This commit is contained in:
parent
9a1d04b6d6
commit
3d2130a17e
7 changed files with 4245 additions and 0 deletions
25
server.js
Normal file
25
server.js
Normal file
|
@ -0,0 +1,25 @@
|
|||
const express = require("express")
|
||||
const app = express()
|
||||
const server = require("http").Server(app)
|
||||
const io = require("socket.io")(server)
|
||||
const { v4: uuidV4 } = require("uuid")
|
||||
|
||||
app.set("view engine", "ejs")
|
||||
app.use(express.static("public"))
|
||||
|
||||
app.get("/", (_, res) => res.redirect(`/${uuidV4()}`))
|
||||
|
||||
app.get("/:room", (req, res) => res.render("room", { roomId: req.params.room }))
|
||||
|
||||
io.on("connection", (socket) =>
|
||||
socket.on("join-room", (roomId, userId) => {
|
||||
socket.join(roomId)
|
||||
socket.to(roomId).emit("user-connected", userId)
|
||||
|
||||
socket.on("disconnect", () => {
|
||||
socket.to(roomId).broadcast.emit("user-disconnected", userId)
|
||||
})
|
||||
})
|
||||
)
|
||||
|
||||
server.listen(3000)
|
Reference in a new issue