feat(scum): add local game player intelligence
This commit is contained in:
@@ -48,6 +48,8 @@ import type {
|
||||
GameClientBridgeSnapshotQuery,
|
||||
GameClientBridgeStatusResponse,
|
||||
GamePluginListResponse,
|
||||
GamePlayerListResponse,
|
||||
GamePlayerProfileResponse,
|
||||
HealthResponse,
|
||||
JobCreateRequest,
|
||||
JobListResponse,
|
||||
@@ -574,6 +576,15 @@ export class PlatformApiClient {
|
||||
return this.request<BackupListResponse>(`/backups?serverInstanceId=${encodeURIComponent(serverInstanceId)}`);
|
||||
}
|
||||
|
||||
async listGamePlayers(serverInstanceId: string, search = ""): Promise<GamePlayerListResponse> {
|
||||
const query = search ? `?search=${encodeURIComponent(search)}` : "";
|
||||
return this.request<GamePlayerListResponse>(`/server-instances/${encodeURIComponent(serverInstanceId)}/game-players${query}`);
|
||||
}
|
||||
|
||||
async getGamePlayerProfile(serverInstanceId: string, playerId: string): Promise<GamePlayerProfileResponse> {
|
||||
return this.request<GamePlayerProfileResponse>(`/server-instances/${encodeURIComponent(serverInstanceId)}/game-players/${encodeURIComponent(playerId)}`);
|
||||
}
|
||||
|
||||
async getBackup(id: string): Promise<BackupResponse> {
|
||||
return this.request<BackupResponse>(`/backups/${encodeURIComponent(id)}`);
|
||||
}
|
||||
|
||||
@@ -297,6 +297,13 @@ export interface RuntimeLogEventResponse {
|
||||
retentionDays: number;
|
||||
severity: "info" | "notice" | "warning" | "critical";
|
||||
}
|
||||
export interface GamePlayerResponse { id: string; serverInstanceId: string; gamePlayerId: string; displayName: string; firstSeenAt: string; lastSeenAt: string; }
|
||||
export interface GamePlayerAliasResponse { alias: string; firstSeenAt: string; lastSeenAt: string; }
|
||||
export interface GamePlayerSessionResponse { id: string; sourceSessionId: string; startedAt: string; endedAt?: string; endReason?: string; }
|
||||
export interface GameAccessAttemptResponse { id: string; occurredAt: string; outcome: string; reason: string; }
|
||||
export interface GameSecuritySignalResponse { id: string; ruleKey: string; status: "open" | "review-required" | "expired"; evidenceCount: number; summary: string; firstObservedAt: string; lastObservedAt: string; }
|
||||
export interface GamePlayerProfileResponse { player: GamePlayerResponse; aliases: GamePlayerAliasResponse[]; sessions: GamePlayerSessionResponse[]; accessAttempts: GameAccessAttemptResponse[]; securitySignals: GameSecuritySignalResponse[]; }
|
||||
export interface GamePlayerListResponse { items: GamePlayerResponse[]; }
|
||||
|
||||
export interface RuntimeTransportProfileResponse {
|
||||
key: string;
|
||||
|
||||
Reference in New Issue
Block a user