Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Title: Change session from private to public for ringback tone usage Description: This PR modifies the session visibility from private to public to enable its usage for ringback tone functionality. Additionally, improvements were made to the remote media setup to ensure smoother playback. Changes made: Updated session access level from private → public. Improved setupRemoteMediaSimpleUserRingBackTone function for better handling of media playback. Updated Code: typescript ```ts async function setupRemoteMediaSimpleUserRingBackTone(session: any, mediaElement: HTMLMediaElement) { try { if (!mediaElement) { console.error("Media element is not provided"); return; } const pc = session?._sessionDescriptionHandler?._peerConnection; if (!pc) { console.error("PeerConnection not found in session"); return; } let remoteStream: MediaStream | null = null; if (pc.getReceivers) { remoteStream = new MediaStream(); pc.getReceivers().forEach((receiver) => { if (receiver.track) { remoteStream!.addTrack(receiver.track); } }); } else if (pc.getRemoteStreams) { remoteStream = pc.getRemoteStreams()[0] || null; } if (!remoteStream) { console.warn("No remote stream found"); return; } mediaElement.srcObject = remoteStream; if (mediaElement.paused) { try { await mediaElement.play(); } catch (error) { console.warn("Autoplay blocked, retrying..."); setTimeout(async () => { try { await mediaElement.play(); } catch (err) { console.error("Error playing media:", err); } }, 1000); } } } catch (error) { console.error("Error in setupRemoteMediaSimpleUserRingBackTone:", error); } } ``` Reason for change: The previous private session restricted access, making it impossible to utilize the session for ringback tone playback. By setting it to public, the session can now be used as intended. Additionally, the media setup function has been improved to ensure stability and better error handling. Impact: Allows the session to be accessible for ringback tone. Ensures proper media playback and prevents unnecessary errors.
- Loading branch information