@klever-one/web-sdk
Version:
Web SDK for integrating real-time room management and streaming functionality into web applications
57 lines (56 loc) • 2.68 kB
TypeScript
import { ConnectionStatus } from '../types';
import { StreamingOptions, AvatarData } from '../types/streaming.types';
import { StreamingConnectionService } from './streaming-connection.service';
/**
* Streaming 전체 시스템을 조정하는 오케스트레이터 서비스
* 책임: 서비스 간 조정, 통합 API 제공, 생명주기 관리
*/
export declare class StreamingOrchestratorService {
private static instance;
private connectionService;
private mediaService;
private uiService;
private constructor();
static getInstance(): StreamingOrchestratorService;
private setupServiceCoordination;
setContainer(element: HTMLElement | null): void;
forceResetContainer(element: HTMLElement | null): void;
connect(signalingServerUrl: string, options?: StreamingOptions): Promise<void>;
disconnect(): void;
reconnect(): Promise<void>;
updateInputOptions(mouseEnabled: boolean, keyboardEnabled: boolean): void;
getStatus(): ConnectionStatus;
getStream(): import('@epicgames-ps/lib-pixelstreamingfrontend-ue5.4').PixelStreaming | null;
getApplication(): any;
getConnectionService(): StreamingConnectionService;
getContainer(): HTMLElement | null;
addStatusListener(listener: (status: ConnectionStatus) => void): void;
removeStatusListener(listener: (status: ConnectionStatus) => void): void;
addDisconnectListener(listener: () => void): void;
removeDisconnectListener(listener: () => void): void;
ttsInteractions(inputText: string, voiceId: string, languageId: string, TTSService: string): void;
sendStartConversation(): void;
endConversation(): void;
autoPlayVideo(): void;
play(): void;
isReadyToSendMessages(): boolean;
resetIsReadyToSend(): void;
resetIsStreamReady(): void;
addIsReadyToSendListener(listener: (isReady: boolean) => void): void;
removeIsReadyToSendListener(listener: (isReady: boolean) => void): void;
resize(width: number, height: number, type?: string | null): void;
enteredFullpage(): void;
exitedFullpage(containerRef: React.RefObject<HTMLDivElement | null>): void;
sendAvatarNum(avatarNum: number | string): void;
sendAvatarAppearanceChange(avatarData: AvatarData): void;
generateDigitalHuman(taskId: string, gender: string): void;
sendFailedGenerateAvatarHead(): void;
sendPlaceBackgroundChange(id: string): void;
sendPageSetting(type: string, value: string): void;
sendVoiceSetting(voiceId: string): void;
reset(): void;
handleResponseFunction(data: string): Promise<void>;
emitUIInteraction(data: any): void;
cleanup(): void;
static destroyInstance(): void;
}