Add shared message interfaces

This commit is contained in:
2026-07-20 17:06:30 +02:00
parent 44dbe212a9
commit 860f1ea80d
3 changed files with 55 additions and 15 deletions
+3 -15
View File
@@ -1,20 +1,8 @@
/**
* Gemeinsames Shared-Modul für Manager und Wrapper.
*
* Hier werden später die geteilten Message-Typen,
* Status-Interfaces und DTOs definiert.
* Hier werden gemeinsame Nachrichten-Interfaces exportiert.
*/
export type MessageType =
| "wrapper.register"
| "wrapper.registered"
| "wrapper.heartbeat"
| "wrapper.status"
| "server.start"
| "server.stop"
| "server.started"
| "server.stopped";
export interface BaseMessage {
type: MessageType;
}
export * from "./messages/wrapper";
export * from "./messages/server";
+22
View File
@@ -0,0 +1,22 @@
export interface ServerStartCommand {
type: "server.start";
serverId: string;
name: string;
port: number;
queryPort: number;
}
export interface ServerStopCommand {
type: "server.stop";
serverId: string;
}
export interface ServerStartedEvent {
type: "server.started";
serverId: string;
}
export interface ServerStoppedEvent {
type: "server.stopped";
serverId: string;
}
+30
View File
@@ -0,0 +1,30 @@
export interface WrapperRegisterMessage {
type: "wrapper.register";
wrapperId?: string;
hostname: string;
cpu: number;
ram: number;
replyQueue: string;
}
export interface WrapperHeartbeatMessage {
type: "wrapper.heartbeat";
wrapperId: string;
}
export interface WrapperStatusMessage {
type: "wrapper.status";
wrapperId: string;
servers: Array<{
id: string;
name: string;
port: number;
queryPort: number;
pid?: number;
alive: boolean;
players: number;
maxPlayers: number;
started: number;
}>;
ramFree: number;
}