Додані повідомлення та перепрацьована структура застосунку та api
This commit is contained in:
11
ws/ws.js
11
ws/ws.js
@@ -2,7 +2,6 @@ const WebSocket = require("ws");
|
||||
const { URL } = require('url');
|
||||
const { routeMessage } = require("./routes");
|
||||
const { auth } = require("./middleware/auth");
|
||||
const { pushToMetrics } = require("./middleware/pushToMetrics");
|
||||
const { setupPing } = require("./utils/ping");
|
||||
require("dotenv").config();
|
||||
|
||||
@@ -29,19 +28,10 @@ wss.on("connection", async (ws, request) => {
|
||||
ws.user = user;
|
||||
ws.send(JSON.stringify({ connection: "success", api_version, user: {name: ws.user.name, id: ws.user.id } }));
|
||||
|
||||
pushToMetrics({ type: "connection_status", status: "online", api_version, user: {name: ws.user.name, id: ws.user.id } });
|
||||
|
||||
// Periodic ping to maintain a connection
|
||||
setupPing(ws);
|
||||
|
||||
ws.on("message", (raw) => {
|
||||
|
||||
pushToMetrics({
|
||||
type: "ws_in",
|
||||
length: raw.length,
|
||||
timestamp: Date.now()
|
||||
});
|
||||
|
||||
try {
|
||||
const message = JSON.parse(raw);
|
||||
routeMessage(wss, ws, message);
|
||||
@@ -53,7 +43,6 @@ wss.on("connection", async (ws, request) => {
|
||||
|
||||
ws.on("close", () => {
|
||||
console.log("🔌 Client disconnected");
|
||||
pushToMetrics({ type: "connection_status", status: "offline" });
|
||||
});
|
||||
ws.on("error", (err) => console.error("❌ WS error:", err));
|
||||
} catch (err) {
|
||||
|
||||
Reference in New Issue
Block a user