infobip-rtc
Version:
Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation
79 lines (78 loc) • 5.11 kB
TypeScript
import { CallStatus } from "./CallStatus";
import { AudioFilter } from "./options/filters/audio/AudioFilter";
import { VideoFilter } from "./options/filters/video/VideoFilter";
import { CameraOrientation } from "./options/CameraOrientation";
import { CallsApiEvent } from "./event/CallsApiEvents";
import { CallsEventHandlers } from "./event/CallsEventHandlers";
import { RoomCallOptions } from "./options/RoomCallOptions";
import { LocalCapturer } from "./LocalCapturer";
import { ServerCapturer } from "./ServerCapturer";
import { CustomData } from "./CustomDataType";
import { DataChannel } from "./DataChannel";
import { AudioQualityMode } from "./options/AudioQualityMode";
import { DisplayOptions } from "./options/DisplayOptions";
export interface RoomCall {
id(): string;
options(): RoomCallOptions;
customData(): CustomData;
name(): string;
status(): CallStatus;
duration(): number;
joinTime(): Date;
leaveTime(): Date;
mute(shouldMute: boolean): Promise<void>;
muted(): boolean;
pauseIncomingVideo(): void;
resumeIncomingVideo(): void;
sendDTMF(dtmf: string): Promise<void>;
cameraVideo(cameraVideo: boolean): Promise<void>;
hasCameraVideo(): boolean;
screenShare(screenShare: boolean): Promise<void>;
startScreenShare(displayOptions?: DisplayOptions): Promise<void>;
stopScreenShare(): Promise<void>;
hasScreenShare(): boolean;
setAudioInputDevice(deviceId: string): Promise<void>;
setVideoInputDevice(deviceId: string): Promise<void>;
audioFilter(): AudioFilter;
setAudioFilter(audioFilter: AudioFilter): Promise<void>;
clearAudioFilter(): Promise<void>;
videoFilter(): VideoFilter;
setVideoFilter(videoFilter: VideoFilter): Promise<void>;
clearVideoFilter(): Promise<void>;
cameraOrientation(): CameraOrientation;
setCameraOrientation(cameraOrientation: CameraOrientation): Promise<void>;
localCapturer(): LocalCapturer;
serverCapturer(): ServerCapturer;
dataChannel(): DataChannel;
setAudioQualityMode(audioQualityMode: AudioQualityMode): void;
audioQualityMode(): AudioQualityMode;
leave(): void;
on(name: CallsApiEvent.ROOM_JOINED, handler: CallsEventHandlers.RoomJoined): void;
on(name: CallsApiEvent.ROOM_LEFT, handler: CallsEventHandlers.RoomLeft): void;
on(name: CallsApiEvent.ERROR, handler: CallsEventHandlers.Error): void;
on(name: CallsApiEvent.CAMERA_VIDEO_ADDED, handler: CallsEventHandlers.CameraVideoAdded): void;
on(name: CallsApiEvent.CAMERA_VIDEO_UPDATED, handler: CallsEventHandlers.CameraVideoUpdated): void;
on(name: CallsApiEvent.CAMERA_VIDEO_REMOVED, handler: CallsEventHandlers.CameraVideoRemoved): void;
on(name: CallsApiEvent.SCREEN_SHARE_ADDED, handler: CallsEventHandlers.ScreenShareAdded): void;
on(name: CallsApiEvent.SCREEN_SHARE_REMOVED, handler: CallsEventHandlers.ScreenShareRemoved): void;
on(name: CallsApiEvent.PARTICIPANT_JOINING, handler: CallsEventHandlers.ParticipantJoining): void;
on(name: CallsApiEvent.PARTICIPANT_JOINED, handler: CallsEventHandlers.ParticipantJoined): void;
on(name: CallsApiEvent.PARTICIPANT_MUTED, handler: CallsEventHandlers.ParticipantMuted): void;
on(name: CallsApiEvent.PARTICIPANT_UNMUTED, handler: CallsEventHandlers.ParticipantUnmuted): void;
on(name: CallsApiEvent.PARTICIPANT_DEAF, handler: CallsEventHandlers.ParticipantDeaf): void;
on(name: CallsApiEvent.PARTICIPANT_UNDEAF, handler: CallsEventHandlers.ParticipantUndeaf): void;
on(name: CallsApiEvent.PARTICIPANT_STARTED_TALKING, handler: CallsEventHandlers.ParticipantStartedTalking): void;
on(name: CallsApiEvent.PARTICIPANT_STOPPED_TALKING, handler: CallsEventHandlers.ParticipantStoppedTalking): void;
on(name: CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_ADDED, handler: CallsEventHandlers.ParticipantCameraVideoAdded): void;
on(name: CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_REMOVED, handler: CallsEventHandlers.ParticipantCameraVideoRemoved): void;
on(name: CallsApiEvent.PARTICIPANT_SCREEN_SHARE_ADDED, handler: CallsEventHandlers.ParticipantScreenShareAdded): void;
on(name: CallsApiEvent.PARTICIPANT_SCREEN_SHARE_REMOVED, handler: CallsEventHandlers.ParticipantCameraVideoRemoved): void;
on(name: CallsApiEvent.PARTICIPANT_LEFT, handler: CallsEventHandlers.ParticipantRemoved): void;
on(name: CallsApiEvent.NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.NetworkQualityChanged): void;
on(name: CallsApiEvent.PARTICIPANT_NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.ParticipantNetworkQualityChanged): void;
on(name: CallsApiEvent.ROOM_RECORDING_STARTED, handler: CallsEventHandlers.RoomRecordingStartedEvent): void;
on(name: CallsApiEvent.RECONNECTING, handler: CallsEventHandlers.Reconnecting): void;
on(name: CallsApiEvent.RECONNECTED, handler: CallsEventHandlers.Reconnected): void;
on(name: CallsApiEvent.PARTICIPANT_DISCONNECTED, handler: CallsEventHandlers.ParticipantDisconnected): void;
on(name: CallsApiEvent.PARTICIPANT_RECONNECTED, handler: CallsEventHandlers.ParticipantReconnected): void;
}