Files
KuppelSimulation/JS/server.js

47 lines
1.1 KiB
JavaScript

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");
});