const express = require("express"); const http = require("http"); const socketIo = require("socket.io"); const app = express(); const server = http.createServer(app); const io = socketIo(server, { cors: { origin: "*", methods: ["GET", "POST"] } }); const port = 3005; app.use(express.static("public")); // WebSocket-Verbindungen verwalten io.on("connection", (socket) => { console.log("Client connected:", socket.id); // Teleskop-Position broadcaasting socket.on("telescope-position", (data) => { // An alle anderen Clients weiterleiten (außer Sender) socket.broadcast.emit("telescope-position", data); }); // Kuppel-Position broadcasting socket.on("dome-position", (data) => { socket.broadcast.emit("dome-position", data); }); // Teleskop-Steuerung socket.on("telescope-control", (data) => { io.emit("telescope-control", data); }); socket.on("disconnect", () => { console.log("Client disconnected:", socket.id); }); }); server.listen(port, () => { console.log(`Observatory simulation running at http://localhost:${port}`); console.log("WebSocket server is ready for telescope and dome communication"); });