infobip-rtc
Version:
Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation
56 lines (55 loc) • 3.79 kB
TypeScript
import { Call } from "./Call";
import { WebrtcCallOptions } from "./options/WebrtcCallOptions";
import { CameraOrientation } from "./options/CameraOrientation";
import { VideoFilter } from "./options/filters/video/VideoFilter";
import { CallsApiEvent } from "./event/CallsApiEvents";
import { CallsEventHandlers } from "./event/CallsEventHandlers";
import { LocalWebrtcCapturer } from "./LocalWebrtcCapturer";
import { ServerWebrtcCapturer } from "./ServerWebrtcCapturer";
import { DataChannel } from "./DataChannel";
import { DisplayOptions } from "./options/DisplayOptions";
export interface WebrtcCall extends Call {
options(): WebrtcCallOptions;
pauseIncomingVideo(): void;
resumeIncomingVideo(): void;
cameraVideo(cameraVideo: boolean): Promise<void>;
hasCameraVideo(): boolean;
hasRemoteCameraVideo(): boolean;
screenShare(screenShare: boolean): Promise<void>;
startScreenShare(displayOptions?: DisplayOptions): Promise<void>;
stopScreenShare(): Promise<void>;
hasScreenShare(): boolean;
hasRemoteScreenShare(): boolean;
setVideoInputDevice(deviceId: string): Promise<void>;
cameraOrientation(): CameraOrientation;
setCameraOrientation(cameraOrientation: CameraOrientation): Promise<void>;
videoFilter(): VideoFilter;
setVideoFilter(videoFilter: VideoFilter): Promise<void>;
clearVideoFilter(): Promise<void>;
localCapturer(): LocalWebrtcCapturer;
serverCapturer(): ServerWebrtcCapturer;
dataChannel(): DataChannel;
on(name: CallsApiEvent.RINGING, handler: CallsEventHandlers.Ringing): void;
on(name: CallsApiEvent.EARLY_MEDIA, handler: CallsEventHandlers.EarlyMedia): void;
on(name: CallsApiEvent.ESTABLISHED, handler: CallsEventHandlers.Established): void;
on(name: CallsApiEvent.HANGUP, handler: CallsEventHandlers.Hangup): 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.REMOTE_MUTED, handler: CallsEventHandlers.RemoteMuted): void;
on(name: CallsApiEvent.REMOTE_UNMUTED, handler: CallsEventHandlers.RemoteUnmuted): void;
on(name: CallsApiEvent.REMOTE_CAMERA_VIDEO_ADDED, handler: CallsEventHandlers.RemoteCameraVideoAdded): void;
on(name: CallsApiEvent.REMOTE_CAMERA_VIDEO_REMOVED, handler: CallsEventHandlers.RemoteCameraVideoRemoved): void;
on(name: CallsApiEvent.REMOTE_SCREEN_SHARE_ADDED, handler: CallsEventHandlers.RemoteScreenShareAdded): void;
on(name: CallsApiEvent.REMOTE_SCREEN_SHARE_REMOVED, handler: CallsEventHandlers.RemoteScreenShareRemoved): void;
on(name: CallsApiEvent.NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.NetworkQualityChanged): void;
on(name: CallsApiEvent.REMOTE_NETWORK_QUALITY_CHANGED, handler: CallsEventHandlers.RemoteNetworkQualityChanged): void;
on(name: CallsApiEvent.REMOTE_DISCONNECTED, handler: CallsEventHandlers.RemoteDisconnected): void;
on(name: CallsApiEvent.REMOTE_RECONNECTED, handler: CallsEventHandlers.RemoteReconnected): void;
on(name: CallsApiEvent.CALL_RECORDING_STARTED, handler: CallsEventHandlers.CallRecordingStartedEvent): void;
on(name: CallsApiEvent.RECONNECTING, handler: CallsEventHandlers.Reconnecting): void;
on(name: CallsApiEvent.RECONNECTED, handler: CallsEventHandlers.Reconnected): void;
}