[0.2.0.4] - 2025-11-14
- Major Screen Share Overhaul: Re-architected screen sharing to use a Dual RTC Client model. The user now joins the channel with a second, dedicated client (e.g.,
[uid]_screen) to publish the screen track.
- RTM Logic: RTM messages (
SHARE_START, SHARE_STOP) now include the screenUid to allow viewers to map the correct track to the correct user.
- Remote Track Handling:
handleUserPublished now checks for the _screen UID suffix to correctly route screen share streams to the main container, solving all previous race conditions.
- PHP REST Endpoint: Added a new REST API route (
/wpj/v1/rtc-token) to generate RTC tokens on-demand for the new screen sharing client.
- Critical Error (CAN_NOT_PUBLISH_MULTIPLE_VIDEO_TRACKS): This error is now fully resolved. The main client's camera track is no longer unpublished, allowing viewers to see both the user's camera and their screen share simultaneously.
- User List: The user list (
renderUserList) is now filtered to exclude screen share clients (e.g., uid_screen) from appearing as participants.