infobip-rtc
Version:
Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation
209 lines (208 loc) • 8.97 kB
TypeScript
import { Participant } from "../../util/Participant";
import { NetworkQuality } from "./NetworkQuality";
import VideoRemovalReason from "../../util/VideoRemovalReason";
import { CurrentMediaStats } from "../stats/CurrentMediaStats";
import { TotalMediaStats } from "../stats/TotalMediaStats";
import { ErrorCode } from "./ErrorCode";
import { RecordingType } from "../options/RecordingOptions";
export declare enum CallsApiEvent {
RINGING = "ringing",
EARLY_MEDIA = "early-media",
ESTABLISHED = "established",
HANGUP = "hangup",
ERROR = "error",
CAMERA_VIDEO_ADDED = "camera-video-added",
CAMERA_VIDEO_UPDATED = "camera-video-updated",
CAMERA_VIDEO_REMOVED = "camera-video-removed",
SCREEN_SHARE_ADDED = "screen-share-added",
SCREEN_SHARE_REMOVED = "screen-share-removed",
CONFERENCE_JOINED = "conference-joined",
CONFERENCE_LEFT = "conference-left",
PARTICIPANT_JOINING = "participant-joining",
PARTICIPANT_JOINED = "participant-joined",
PARTICIPANT_MUTED = "participant-muted",
PARTICIPANT_UNMUTED = "participant-unmuted",
PARTICIPANT_DEAF = "participant-deaf",
PARTICIPANT_UNDEAF = "participant-undeaf",
PARTICIPANT_STARTED_TALKING = "participant-started-talking",
PARTICIPANT_STOPPED_TALKING = "participant-stopped-talking",
PARTICIPANT_LEFT = "participant-left",
PARTICIPANT_CAMERA_VIDEO_ADDED = "participant-camera-video-added",
PARTICIPANT_CAMERA_VIDEO_REMOVED = "participant-camera-video-removed",
PARTICIPANT_SCREEN_SHARE_ADDED = "participant-screen-share-added",
PARTICIPANT_SCREEN_SHARE_REMOVED = "participant-screen-share-removed",
PARTICIPANT_NETWORK_QUALITY_CHANGED = "participant-network-quality-changed",
PARTICIPANT_DISCONNECTED = "participant-disconnected",
PARTICIPANT_RECONNECTED = "participant-reconnected",
ROOM_JOINED = "room-joined",
ROOM_LEFT = "room-left",
REMOTE_MUTED = "remote-muted",
REMOTE_UNMUTED = "remote-unmuted",
REMOTE_CAMERA_VIDEO_ADDED = "remote-camera-video-added",
REMOTE_CAMERA_VIDEO_REMOVED = "remote-camera-video-removed",
REMOTE_SCREEN_SHARE_ADDED = "remote-screen-share-added",
REMOTE_SCREEN_SHARE_REMOVED = "remote-screen-share-removed",
NETWORK_QUALITY_CHANGED = "network-quality-changed",
REMOTE_NETWORK_QUALITY_CHANGED = "remote-network-quality-changed",
REMOTE_DISCONNECTED = "remote-disconnected",
REMOTE_RECONNECTED = "remote-reconnected",
DIALOG_JOINED = "dialog-joined",
DIALOG_LEFT = "dialog-left",
RECONNECTING = "reconnecting",
RECONNECTED = "reconnected",
CALL_RECORDING_STARTED = "call-recording-started",
CALL_RECORDING_STOPPED = "call-recording-stopped",
CONFERENCE_RECORDING_STARTED = "conference-recording-started",
CONFERENCE_RECORDING_STOPPED = "conference-recording-stopped",
DIALOG_RECORDING_STARTED = "dialog-recording-started",
DIALOG_RECORDING_STOPPED = "dialog-recording-stopped",
ROOM_RECORDING_STARTED = "room-recording-started"
}
export type AnyCallsApiEvent = CallsApiEvent.RINGING | CallsApiEvent.EARLY_MEDIA | CallsApiEvent.ESTABLISHED | CallsApiEvent.HANGUP | CallsApiEvent.ERROR | CallsApiEvent.CAMERA_VIDEO_ADDED | CallsApiEvent.CAMERA_VIDEO_UPDATED | CallsApiEvent.CAMERA_VIDEO_REMOVED | CallsApiEvent.SCREEN_SHARE_ADDED | CallsApiEvent.SCREEN_SHARE_REMOVED | CallsApiEvent.CONFERENCE_JOINED | CallsApiEvent.CONFERENCE_LEFT | CallsApiEvent.ROOM_JOINED | CallsApiEvent.ROOM_LEFT | CallsApiEvent.PARTICIPANT_JOINING | CallsApiEvent.PARTICIPANT_JOINED | CallsApiEvent.PARTICIPANT_MUTED | CallsApiEvent.PARTICIPANT_UNMUTED | CallsApiEvent.PARTICIPANT_DEAF | CallsApiEvent.PARTICIPANT_UNDEAF | CallsApiEvent.PARTICIPANT_STARTED_TALKING | CallsApiEvent.PARTICIPANT_STOPPED_TALKING | CallsApiEvent.PARTICIPANT_LEFT | CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_ADDED | CallsApiEvent.PARTICIPANT_CAMERA_VIDEO_REMOVED | CallsApiEvent.PARTICIPANT_SCREEN_SHARE_ADDED | CallsApiEvent.PARTICIPANT_SCREEN_SHARE_REMOVED | CallsApiEvent.REMOTE_MUTED | CallsApiEvent.REMOTE_UNMUTED | CallsApiEvent.REMOTE_CAMERA_VIDEO_ADDED | CallsApiEvent.REMOTE_CAMERA_VIDEO_REMOVED | CallsApiEvent.REMOTE_SCREEN_SHARE_ADDED | CallsApiEvent.REMOTE_SCREEN_SHARE_REMOVED | CallsApiEvent.REMOTE_DISCONNECTED | CallsApiEvent.REMOTE_RECONNECTED | CallsApiEvent.NETWORK_QUALITY_CHANGED | CallsApiEvent.PARTICIPANT_NETWORK_QUALITY_CHANGED | CallsApiEvent.PARTICIPANT_DISCONNECTED | CallsApiEvent.PARTICIPANT_RECONNECTED | CallsApiEvent.REMOTE_NETWORK_QUALITY_CHANGED | CallsApiEvent.DIALOG_JOINED | CallsApiEvent.DIALOG_LEFT | CallsApiEvent.RECONNECTED | CallsApiEvent.RECONNECTING | CallsApiEvent.CALL_RECORDING_STARTED | CallsApiEvent.CALL_RECORDING_STOPPED | CallsApiEvent.DIALOG_RECORDING_STARTED | CallsApiEvent.DIALOG_RECORDING_STOPPED | CallsApiEvent.CONFERENCE_RECORDING_STARTED | CallsApiEvent.CONFERENCE_RECORDING_STOPPED | CallsApiEvent.ROOM_RECORDING_STARTED;
export declare namespace CallsApiEvents {
type RingingEvent = {};
type EarlyMediaEvent = {
stream: MediaStream;
};
type EstablishedEvent = {
stream: MediaStream;
};
type HangupEvent = {
errorCode: ErrorCode;
totalMediaStats: TotalMediaStats;
};
type ErrorEvent = {
errorCode: ErrorCode;
};
type CameraVideoAddedEvent = {
stream: MediaStream;
};
type CameraVideoUpdatedEvent = {
stream: MediaStream;
};
type CameraVideoRemovedEvent = {};
type ScreenShareAddedEvent = {
stream: MediaStream;
};
type ScreenShareRemovedEvent = {
reason: VideoRemovalReason;
};
type ConferenceJoinedEvent = {
id: string;
name: string;
participants: Participant[];
recordingType: RecordingType;
};
type ConferenceLeftEvent = {
errorCode: ErrorCode;
};
type RoomJoinedEvent = {
id: string;
name: string;
participants: Participant[];
stream: MediaStream;
recordingType: RecordingType;
};
type RoomLeftEvent = {
errorCode: ErrorCode;
totalMediaStats: TotalMediaStats;
};
type ConferenceFinishedEvent = {
errorCode: ErrorCode;
};
type ParticipantJoiningEvent = {
participant: Participant;
};
type ParticipantJoinedEvent = {
participant: Participant;
};
type ParticipantMutedEvent = {
participant: Participant;
};
type ParticipantUnmutedEvent = {
participant: Participant;
};
type ParticipantDeafEvent = {
participant: Participant;
};
type ParticipantUndeafEvent = {
participant: Participant;
};
type ParticipantStartedTalkingEvent = {
participant: Participant;
};
type ParticipantStoppedTalkingEvent = {
participant: Participant;
};
type ParticipantRemovedEvent = {
participant: Participant;
};
type ParticipantCameraVideoAddedEvent = {
participant: Participant;
stream: MediaStream;
};
type ParticipantCameraVideoRemovedEvent = {
participant: Participant;
};
type ParticipantScreenShareAddedEvent = {
participant: Participant;
stream: MediaStream;
};
type ParticipantScreenShareRemovedEvent = {
participant: Participant;
};
type NetworkQualityChangedEvent = {
networkQuality: NetworkQuality;
currentMediaStats: CurrentMediaStats;
};
type ParticipantNetworkQualityChangedEvent = {
participant: Participant;
networkQuality: NetworkQuality;
};
type ParticipantDisconnectedEvent = {
participant: Participant;
};
type ParticipantReconnectedEvent = {
participant: Participant;
};
type ReconnectedEvent = {};
type ReconnectingEvent = {};
type RemoteMutedEvent = {};
type RemoteUnmutedEvent = {};
type RemoteCameraVideoAddedEvent = {
stream: MediaStream;
};
type RemoteCameraVideoRemovedEvent = {};
type RemoteScreenShareAddedEvent = {
stream: MediaStream;
};
type RemoteScreenShareRemovedEvent = {};
type RemoteNetworkQualityChangedEvent = {
networkQuality: NetworkQuality;
};
type RemoteDisconnectedEvent = {};
type RemoteReconnectedEvent = {};
type DialogJoinedEvent = {
id: string;
remote: Participant;
recordingType: RecordingType;
};
type DialogLeftEvent = {
errorCode: ErrorCode;
};
type CallRecordingStartedEvent = {
recordingType: RecordingType;
};
type DialogRecordingStartedEvent = {
recordingType: RecordingType;
};
type ConferenceRecordingStartedEvent = {
recordingType: RecordingType;
};
type RoomRecordingStartedEvent = {
recordingType: RecordingType;
};
type CallRecordingStoppedEvent = {};
type DialogRecordingStoppedEvent = {};
type ConferenceRecordingStoppedEvent = {};
}