Skip to main content
Version: 2.x.x

Host vs Audience Modes - React Native

Before diving into implementation, it's important to understand the two core modes of participation in an Interactive Live Stream (ILS) session:

Mode Architecture​

Here's a visual representation of how these modes function within an ILS session:

Interactive Live Streaming architecture diagram

note

Throughout the rest of this documentation, whenever we mention "Host", we are specifically referring to a participant in the SEND_AND_RECV mode. Similarly, when we mention "Audience" or "Viewer", we are referring to participants in the RECV_ONLY mode. These distinctions are important, as each mode comes with its own set of capabilities and limitations.

1. SEND_AND_RECV – Host / Co-host Mode​

This mode is designed for Hosts or Co-hosts who need to broadcast their audio and video to the audience and potentially interact with other hosts. Following is the list of everything a host is capable of:

  • Publish and receive media (audio/video/screen share)
  • Participate in conversations with other hosts
  • Engage with the audience using chat, polls, reactions, and more
  • Moderate the stage and manage participants
  • Invite audience members on stage to become temporary broadcasters

🔢 Supports 100+ simultaneous hosts/co-hosts (Need more? Contact support@videosdk.live)

2. RECV_ONLY – Audience Mode​

This mode is for audience members who are viewing the live stream and engaging via non-verbal interaction tools. Following is the list of everything the audience is capable of:

  • Receive media from all active hosts in real time (audio/video/screen share)
  • No media publishing – cannot share their own audio/video unless promoted
    • Calls that publish media, such as unmuteMic(), enableCam() and enableScreenShare(), reject with 3066 ERROR_ACTION_NOT_SUPPORTED_IN_MODE in this mode.
  • Engage via:
    • Live chat
    • Polls and quizzes
    • Reactions (emojis, claps, hearts, etc.)
    • Virtual gifts
    • Hand raise to request stage access

🔢 Scales to 2,000+ real-time viewers (Need more? Contact support@videosdk.live)

Switching Between Modes​

If a host invites an audience member on stage, they can switch from RECV_ONLY mode to SEND_AND_RECV mode. This allows them to publish their audio/video and interact like a host or co-host. Once their role is revoked, they can return to the audience mode.

A participant switches its own mode by calling changeMode() of the useRoom hook, as shown in Change Mode. Switching to RECV_ONLY turns off their mic, camera and screen share. Switching back to SEND_AND_RECV turns the mic and camera back on if they were on before. For a participant who joined in RECV_ONLY mode, the micEnabled and camEnabled values of the RoomProvider config decide this.

Got a Question? Ask us on discord