Čats izmantojot socket.io. Viss funkcionē, bet ir problēma ar tiešsaistes lietotāju skaitu. Tiklīdz tiek atvērta jauna cilne tiešsaistes lietotāju skaitam tiek pievienots jauns lietotājs. Ja atveru 10 jaunas cilnes, pieskaitas 10 jauni tiešsaistes lietotāji. Lietotāju skaitam ir jābūt unikālai IP summai! Paldies!
Savienošanās
io.on("connection", async (socket) => {
// push current user in sockets
sockets.push(socket);
// get all users
const allSockets = await io.allSockets();
// emit the size of allSockets
io.emit("numberOfOnline", allSockets.size);
Atvienošanās
// remove the current user in sockets, searching, and notAvailable array if the user disconnects
sockets = sockets.filter((user) => user.id !== socket.id);
searching = searching.filter((user) => user.id !== socket.id);
notAvailable = notAvailable.filter((user) => user.id !== socket.id);
});
socket.on("disconnect", async () => {
// get all users
const allSockets = await io.allSockets();
// emit the size of allSockets
io.emit("numberOfOnline", allSockets.size);
});
Paldies!