import Logger from '../logger/Logger'; import MeetingSession from '../meetingsession/MeetingSession'; import CheckAudioConnectivityFeedback from './CheckAudioConnectivityFeedback'; import CheckAudioInputFeedback from './CheckAudioInputFeedback'; import CheckAudioOutputFeedback from './CheckAudioOutputFeedback'; import CheckCameraResolutionFeedback from './CheckCameraResolutionFeedback'; import CheckContentShareConnectivityFeedback from './CheckContentShareConnectivityFeedback'; import CheckNetworkTCPConnectivityFeedback from './CheckNetworkTCPConnectivityFeedback'; import CheckNetworkUDPConnectivityFeedback from './CheckNetworkUDPConnectivityFeedback'; import CheckVideoConnectivityFeedback from './CheckVideoConnectivityFeedback'; import CheckVideoInputFeedback from './CheckVideoInputFeedback'; import MeetingReadinessChecker from './MeetingReadinessChecker'; import MeetingReadinessCheckerConfiguration from './MeetingReadinessCheckerConfiguration'; export default class DefaultMeetingReadinessChecker implements MeetingReadinessChecker { private logger; private meetingSession; private configuration; private static delay; private audioContext; private gainNode; private oscillatorNode; private destinationStream; private originalURLRewriter; private browserBehavior; constructor(logger: Logger, meetingSession: MeetingSession, configuration?: MeetingReadinessCheckerConfiguration); checkAudioInput(audioInputDeviceInfo: MediaDeviceInfo): Promise; checkAudioOutput(audioOutputDeviceInfo: MediaDeviceInfo, audioOutputVerificationCallback: () => Promise, audioElement?: HTMLAudioElement): Promise; private playTone; private stopTone; checkVideoInput(videoInputDeviceInfo: MediaDeviceInfo): Promise; checkCameraResolution(videoInputDevice: MediaDeviceInfo, width: number, height: number): Promise; private calculateVideoConstraint; checkContentShareConnectivity(sourceId?: string): Promise; checkAudioConnectivity(audioInputDeviceInfo: MediaDeviceInfo): Promise; checkVideoConnectivity(videoInputDeviceInfo: MediaDeviceInfo): Promise; checkNetworkUDPConnectivity(): Promise; checkNetworkTCPConnectivity(): Promise; private startMeeting; private stopMeeting; private executeTimeoutTask; }