| Server IP : 209.209.40.120 / Your IP : 216.73.217.112 Web Server : Microsoft-IIS/10.0 System : Windows NT NEWWWW 10.0 build 17763 (Windows Server 2019) i586 User : NEWWWW$ ( 0) PHP Version : 8.3.30 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : OFF | Perl : OFF | Python : OFF | Sudo : OFF | Pkexec : OFF Directory : C:/software/smsc smpp installer/software/advanced-chat-app/ |
Upload File : |
const app = require("express")();
const http = require("http").Server(app);
const io = require("socket.io")(http);
const path = require("path");
const DataBase = require("./database.js");
const db = new DataBase();
app.get("/", (req, res) => {
res.sendFile(__dirname + "/index.html");
});
io.on("connection", function (socket) {
console.log("A user with ID: " + socket.id + " connected");
socket.on("disconnect", function () {
console.log("A user with ID: " + socket.id + " disconnected");
});
// More Socket listening here.
if (io.sockets.connected)
socket.emit("connections", Object.keys(io.sockets.connected).length);
else socket.emit("connections", 0);
socket.on("chat-message", async (message) => {
const data = {
message: message.message,
user_id: socket.id,
name: message.user,
};
await db.storeUserMessage(data);
socket.broadcast.emit("chat-message", message);
});
socket.on("typing", (data) => {
socket.broadcast.emit("typing", data);
});
socket.on("stopTyping", () => {
socket.broadcast.emit("stopTyping");
});
socket.on("joined", async (name) => {
let messageData = null;
const data = {
name,
user_id: socket.id,
};
const user = await db.addUser(data);
if (user) {
messageData = await db.fetchUserMessages(data);
}
socket.broadcast.emit("joined", messageData);
});
socket.on("leave", (data) => {
socket.broadcast.emit("leave", data);
});
});
http.listen(3001, () => {
console.log("Listening on port *: 3000");
});