@100mslive/hms-video-store
Version:
@100mslive Core SDK which abstracts the complexities of webRTC while providing a reactive store for data management with a unidirectional data flow
63 lines (62 loc) • 3.41 kB
TypeScript
import { ConnectivityCheckResult, ConnectivityState, HMSDiagnosticsConnectivityListener } from './interfaces';
import { RTCIceCandidatePair } from '../connection/IConnectionObserver';
import { HMSConnectionQuality, HMSException, HMSRoom, HMSTrack, HMSTrackUpdate, HMSUpdateListener } from '../internal';
import { HMSSdk } from '../sdk';
import { HMSPeer } from '../sdk/models/peer';
export declare class ConnectivityCheck implements HMSDiagnosticsConnectivityListener {
private sdk;
private sdkListener;
private progressCallback;
private completionCallback;
private connectivityDuration;
private wsConnected;
private websocketURL?;
private initConnected;
private isPublishICEConnected;
private isSubscribeICEConnected;
private selectedPublishICECandidate?;
private selectedSubscribeICECandidate?;
private gatheredPublishICECandidates;
private gatheredSubscribeICECandidates;
private errors;
private isAudioTrackCaptured;
private isVideoTrackCaptured;
private isAudioTrackPublished;
private isVideoTrackPublished;
private statsCollector;
private cqsCalculator;
private cleanupTimer?;
private timestamp;
private _state?;
private get state();
private set state(value);
constructor(sdk: HMSSdk, sdkListener: HMSUpdateListener, progressCallback: (state: ConnectivityState) => void, completionCallback: (state: ConnectivityCheckResult) => void, connectivityDuration?: number);
onRoomUpdate: (type: import("../internal").HMSRoomUpdate, room: HMSRoom) => void;
onPeerUpdate: (type: import("../internal").HMSPeerUpdate, peer: HMSPeer | HMSPeer[] | null) => void;
onMessageReceived: (message: import("../notification-manager").MessageNotification) => void;
onReconnected: () => void;
onRoleChangeRequest: (request: import("../internal").HMSRoleChangeRequest) => void;
onRoleUpdate: (newRole: string) => void;
onChangeTrackStateRequest: (request: import("../internal").HMSChangeTrackStateRequest) => void;
onChangeMultiTrackStateRequest: (request: import("../internal").HMSChangeMultiTrackStateRequest) => void;
onRemovedFromRoom: (request: import("../internal").HMSLeaveRoomRequest) => void;
onNetworkQuality: ((score: number) => void) | undefined;
onPreview: (room: HMSRoom, localTracks: HMSTrack[]) => void;
onDeviceChange: ((event: import("../internal").HMSDeviceChangeEvent) => void) | undefined;
onSessionStoreUpdate: (values: import("../internal").SessionStoreUpdate[]) => void;
onPollsUpdate: (type: import("../internal").HMSPollsUpdate, polls: import("../internal").HMSPoll[]) => void;
onWhiteboardUpdate: (whiteboard: import("../internal").HMSWhiteboard) => void;
handleConnectionQualityUpdate: (qualities: HMSConnectionQuality[]) => void;
onICESuccess(isPublish: boolean): void;
onSelectedICECandidatePairChange(candidatePair: RTCIceCandidatePair, isPublish: boolean): void;
onICECandidate(candidate: RTCIceCandidate, isPublish: boolean): void;
onMediaPublished(track: HMSTrack): void;
onInitSuccess(websocketURL: string): void;
onSignallingSuccess(): void;
onJoin(room: HMSRoom): void;
onError(error: HMSException): void;
onTrackUpdate(type: HMSTrackUpdate, track: HMSTrack, peer: HMSPeer): void;
onReconnecting(error: HMSException): void;
cleanupAndReport(): void;
private buildReport;
}