UNPKG

infobip-rtc

Version:

Infobip RTC JavaScript SDK - Infobip WebRTC API Implementation

41 lines (40 loc) 1.95 kB
import { Logger } from "../Logger"; import { NetworkQualityStatistics } from "./media/NetworkQualityStatistics"; import { SelectedCandidatePair } from "./transport/SelectedCandidatePair"; import { TotalMediaStats } from "../../call/stats/TotalMediaStats"; import { CurrentMediaStats } from "../../call/stats/CurrentMediaStats"; export type NetworkQualityStatisticsCallback = (networkQualityStatistics: NetworkQualityStatistics, currentMediaStats: CurrentMediaStats) => void; export declare class PeerConnectionMediaMonitor { callId: string; private name; conferenceId: string; private pc; private isVideo; private logger; protected static MONITOR_ICE_STATES: Set<string>; protected static DEFAULT_MONITOR_SUMMARY_INTERVAL: number; protected static DEFAULT_MONITOR_TRACK_INTERVAL: number; protected readonly summaryInterval: any; protected readonly trackMonitoringInterval: any; protected selectedCandidatePair: SelectedCandidatePair; protected networkQualityStatisticsListener: NetworkQualityStatisticsCallback; private readonly previousConferenceStats; constructor(callId: string, name: string, conferenceId: string, pc: RTCPeerConnection, isVideo: boolean, logger: Logger); setIsVideo(isVideo: boolean): void; stop(): TotalMediaStats; onNetworkQualityStatistics(callback: NetworkQualityStatisticsCallback): void; protected sendSelectedCandidatePair(rtcStatsReport: RTCStatsReport): void; protected sendTotalCallStats(): TotalMediaStats; protected sendTrackStats(): void; protected sendSummaryStats(): void; private sendStatsForTrack; private emitNetworkQualityStats; private getCurrentMediaStats; private sendSummaryStatsForPeerConnection; private sendStatsForLabeledTrack; private sendExtractedMediaStats; private sendExtractedStats; private fillAudioStats; private fillRemoteAudioStats; private fillLocalAudioStats; }