in src/providers/MeetingProvider/MeetingManager.ts [246:271]
async leave(): Promise<void> {
if (this.audioVideo) {
this.audioVideo.stopContentShare();
this.audioVideo.stopLocalVideoTile();
this.audioVideo.unbindAudioElement();
try {
await this.audioVideo.chooseVideoInputDevice(null);
await this.audioVideo.chooseAudioInputDevice(null);
await this.audioVideo.chooseAudioOutputDevice(null);
} catch (error) {
console.log('Unable to set device to null on leave.');
}
if (this.activeSpeakerListener) {
this.audioVideo.unsubscribeFromActiveSpeakerDetector(
this.activeSpeakerListener
);
}
this.audioVideo.stop();
}
this.initializeMeetingManager();
this.publishAudioVideo();
this.publishActiveSpeaker();
}