upd
This commit is contained in:
@@ -17,10 +17,16 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
status: sessionStatus,
|
||||
appPid,
|
||||
cirrusPid,
|
||||
streamerPort,
|
||||
playerPort,
|
||||
sfuPort,
|
||||
} = body as {
|
||||
status?: "starting" | "started" | "ending" | "ended";
|
||||
appPid?: number;
|
||||
cirrusPid?: number;
|
||||
streamerPort?: number;
|
||||
playerPort?: number;
|
||||
sfuPort?: number;
|
||||
};
|
||||
|
||||
// Проверить, что сессия существует
|
||||
@@ -35,6 +41,9 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
status: sessionStatus,
|
||||
appPid,
|
||||
cirrusPid,
|
||||
streamerPort,
|
||||
playerPort,
|
||||
sfuPort,
|
||||
});
|
||||
|
||||
return { session: updatedSession };
|
||||
@@ -51,6 +60,9 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
),
|
||||
appPid: t.Optional(t.Number()),
|
||||
cirrusPid: t.Optional(t.Number()),
|
||||
streamerPort: t.Optional(t.Number()),
|
||||
playerPort: t.Optional(t.Number()),
|
||||
sfuPort: t.Optional(t.Number()),
|
||||
}),
|
||||
}
|
||||
)
|
||||
@@ -253,11 +265,17 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
status: sessionStatus,
|
||||
appPid,
|
||||
cirrusPid,
|
||||
streamerPort,
|
||||
playerPort,
|
||||
sfuPort,
|
||||
endAt,
|
||||
} = body as {
|
||||
status?: "starting" | "started" | "ending" | "ended";
|
||||
appPid?: number;
|
||||
cirrusPid?: number;
|
||||
streamerPort?: number;
|
||||
playerPort?: number;
|
||||
sfuPort?: number;
|
||||
endAt?: string;
|
||||
};
|
||||
|
||||
@@ -276,6 +294,9 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
status: sessionStatus,
|
||||
appPid,
|
||||
cirrusPid,
|
||||
streamerPort,
|
||||
playerPort,
|
||||
sfuPort,
|
||||
endAt: endAt ? new Date(endAt) : undefined,
|
||||
});
|
||||
|
||||
@@ -293,6 +314,9 @@ export const sessionController = new Elysia({ prefix: "/sessions" })
|
||||
),
|
||||
appPid: t.Optional(t.Number()),
|
||||
cirrusPid: t.Optional(t.Number()),
|
||||
streamerPort: t.Optional(t.Number()),
|
||||
playerPort: t.Optional(t.Number()),
|
||||
sfuPort: t.Optional(t.Number()),
|
||||
endAt: t.Optional(t.String({ format: "date-time" })),
|
||||
}),
|
||||
}
|
||||
|
||||
@@ -26,6 +26,9 @@ export const serverSessions = pgTable("server_sessions", {
|
||||
endAt: timestamp("end_at", { withTimezone: true }), // Default 30 minutes from start_at
|
||||
appPid: integer("app_pid"),
|
||||
cirrusPid: integer("cirrus_pid"),
|
||||
streamerPort: integer("streamer_port"), // Порт Cirrus для UE приложения (streamer)
|
||||
playerPort: integer("player_port"), // Порт Cirrus для клиента (player/браузер)
|
||||
sfuPort: integer("sfu_port"), // Порт Cirrus для SFU (Selective Forwarding Unit)
|
||||
mode: sessionModeEnum("mode").notNull(), // stream, local
|
||||
tier: serverTierEnum("tier"), // demo, prod (только для stream, nullable)
|
||||
status: sessionStatusEnum("status").notNull(), // starting, started, ending, ended
|
||||
|
||||
@@ -19,6 +19,9 @@ export interface UpdateSessionParams {
|
||||
status?: SessionStatus;
|
||||
appPid?: number;
|
||||
cirrusPid?: number;
|
||||
streamerPort?: number;
|
||||
playerPort?: number;
|
||||
sfuPort?: number;
|
||||
endAt?: Date;
|
||||
}
|
||||
|
||||
@@ -103,6 +106,9 @@ export const serverSessionService = {
|
||||
endAt: serverSessions.endAt,
|
||||
appPid: serverSessions.appPid,
|
||||
cirrusPid: serverSessions.cirrusPid,
|
||||
streamerPort: serverSessions.streamerPort,
|
||||
playerPort: serverSessions.playerPort,
|
||||
sfuPort: serverSessions.sfuPort,
|
||||
mode: serverSessions.mode,
|
||||
status: serverSessions.status,
|
||||
createdAt: serverSessions.createdAt,
|
||||
@@ -292,6 +298,18 @@ export const serverSessionService = {
|
||||
updateData.cirrusPid = params.cirrusPid;
|
||||
}
|
||||
|
||||
if (params.streamerPort !== undefined) {
|
||||
updateData.streamerPort = params.streamerPort;
|
||||
}
|
||||
|
||||
if (params.playerPort !== undefined) {
|
||||
updateData.playerPort = params.playerPort;
|
||||
}
|
||||
|
||||
if (params.sfuPort !== undefined) {
|
||||
updateData.sfuPort = params.sfuPort;
|
||||
}
|
||||
|
||||
if (params.endAt) {
|
||||
updateData.endAt = params.endAt;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user