vani-meeting-client
Version:
Vani Meeting Clinet SDK
77 lines (76 loc) • 3.88 kB
TypeScript
import { VaniEvent, MeetingStartRequest, MessagePayload, MeetingHandler } from "..";
import { Participant } from "../model/Participant";
import { Track, TrackKind } from "../model/Track";
import { WebSocketEvents, WebsocketHandler, WebSocketMessageBody } from "../websocket-handler/WebsocketHandler";
import { BaseVideoCallHandler } from "../video-call-handler/BaseVideoCallHandler";
import { VaniEventListener } from "../utility/VaniEventListener";
export declare class CommunicationHandler {
isStartAndSetupWithServerCalled: boolean;
eventEmitter: VaniEventListener;
private allParticipants;
private selfTracks;
private allTracks;
private allSelfTracksForRestartSFU;
private meetingStartRequest?;
private websocketCallHandler?;
private videoCallHandler?;
private meetingHandler?;
private internetReachbilityTimeout?;
private isReachable;
private isServerVerifiedIfStartMeetingCalled;
constructor(meetingHandler: MeetingHandler);
setMeetingStartRequest(_meetingStartRequest: MeetingStartRequest): void;
setWebsocketCallHandler(_websocketCallHandler: WebsocketHandler): void;
setVideoCallHandler(_videoCallHandler: BaseVideoCallHandler): void;
isReady(): boolean;
emitMessageToSource(emitType: VaniEvent, payload: any): Promise<void>;
getEventEmitter(): VaniEventListener;
onAudioVideoStatusUpdated(data: any): void;
refetchTrackForParticipant: (participant: Participant) => Promise<void>;
restartTransport: () => Promise<void>;
updateSelfParticipantUserId(): void;
getSelfParticipant(): Participant | undefined;
downloadParticipantsData(): void;
onServerParticipants(data: any): void;
isWebScoketConnected(): boolean;
getAllParticipants(): Participant[];
participantByUserId(userId: string): Participant | undefined;
onStartParticipantMeetingCalled: (participantData: any) => Promise<void>;
addParticipantIfNotExist(participant: Participant, shouldInfrom?: boolean): Participant | undefined;
removeParticipant(participant: Participant, shouldInfrom?: boolean): void;
onUserLeft(data: any): void;
private updateParticipantAudioVideoDataAccordingToTrack;
getSelfTrackByType(trackKind: TrackKind): Track | undefined;
getAllSelfTracks(): Track[];
getAllTracks(): Track[];
getTrackById(trackId: string): Track | undefined;
getLocalTrackById(trackId: string): Track | undefined;
getAllTracksForParticipant(participant: Participant): Track[];
removeTrack(track: Track, shouldInfromVideoController?: boolean): void;
resumeProducerOrConsumerForTrack(track: Track): void;
pauseProducerOrConsumerForTrack(track: Track): void;
getConsumerForTrack(track: Track): void;
addUpdateRemoteTrack(track: Track, participant: Participant, shouldInfromIfNotExist?: boolean): Track;
addUpdateLocalTrack(track: Track): void;
onOldMessages(data: any): void;
requestToCloseTheRoom: () => Promise<void>;
onMessage(message: any, shouldInfromSource?: boolean): MessagePayload;
sendWebSocketMessage(type: WebSocketEvents, data: any): void;
onVideoCallWebSocketMessage(websocketMessage: WebSocketMessageBody): Promise<void>;
onReconnect(shouldInfromVideoCallHandler?: boolean): Promise<void>;
onStartMeeingCalled(isForceFully?: boolean): boolean;
checkIfStartMeetingUpdatedOnServer: () => Promise<void>;
onAudioBlocked(data: any): void;
onAudioUnblocked(data: any): void;
onVideoBlocked(data: any): void;
onVideoUnblocked(data: any): void;
destoryRoomForcefully: () => void;
onIceCandidateDisconnected(): void;
checkIfInternetReachable: (count: number) => void;
private onApiResponded;
onPing: () => Promise<void>;
restartSFU: () => Promise<void>;
onSFUInitDone: () => Promise<void>;
private reloadSFUCleanUpDone;
cleanup(): Promise<void>;
}