User Experience Guidelines - React Native
Delivering a polished live streaming experience means planning for how users interact with meetings on mobile devices. These practices help you guide participants through setup, keep them informed about what is happening, and offer graceful fallbacks when something goes wrong.
Configure Precall & Permissions
Set up a precall flow where users can preview their audio and video devices, toggle their microphone or camera, and test network quality. Always request camera, microphone, Bluetooth, and screen-sharing permissions before joining the meeting, and provide a friendly reminder when a permission is denied so users know how to enable it from device settings.
Surface Meeting State Changes
Listen to meeting-level events (meeting-state-changed, meeting-joined, meeting-left, recording-state-changed, etc.) and mirror those changes in the UI. Showing banners or subtle toasts when recording starts, when the stream goes live, or when a moderator changes participant roles keeps everyone aligned without interrupting the session.
Notify Users About Participant Activity
Send lightweight notifications when participants join or leave, are invited on stage, or raise their hands. This helps presenters respond quickly, and gives the audience confidence that their actions were acknowledged.
Handle Device Transitions Gracefully
Expose controls that let users switch between available microphones, cameras, and speakers during the session. When no device is detected (for example, an external mic is unplugged), provide clear UI prompts describing how to recover—such as reconnecting hardware or enabling the device again from system settings.
React to Errors Immediately
Subscribe to the error event from the Meeting object so that issues such as token failures, recording limits, or track errors can be surfaced to the user with actionable next steps. Offer retry buttons whenever possible, and log diagnostic information that can be shared with support.
Monitor Quality & Bandwidth
Collect local statistics (bitrate, packet loss, frame rate) and expose them to power users or support teams. If you detect degraded quality, nudge users to switch to audio-only, reduce the number of on-stage participants, or pause screen sharing until the connection stabilizes.
Got a Question? Ask us on discord

