Hi,
I’m building an admin dashboard to monitor participants across multiple rooms.
My goal is to have about 100 participants spread across different rooms, but I want to manage/view them from a single ‘Admin Room’.
I’m considering using the ForwardParticipant API to mirror them into that central room.
A couple of questions regarding this
-
Performance/Cost: Is forwarding ‘heavy’ for the server, or does it significantly increase usage costs compared to a standard with multiple rooms for example.
-
Architecture: Between forwarding everyone to one room vs. having the Admin client join multiple rooms, is forwarding the recommended path for this scale?
My main concern is avoiding client-side overhead for the admin while keeping the server costs optimized.
Any insights would be appreciated.
Thanks.
I’m building an admin dashboard to monitor participants across multiple rooms.
It feels architecturally simpler to have your admin client join the individual rooms, and you would also end up with fewer participants overall. For example, 100 participants spread across 10 rooms would be 200 total participants if you forwarded each one (plus 1 admin participant), vs. 100 participants + (10 rooms each with 1 agent participant) = 110 total participants.
It does depend on your use case though, when I first read your question I thought you just wanted an overall view of participants across all rooms, in which case I was going to recommend the analytics API, Analytics API | LiveKit Documentation, but re-reading, I assume you want to be able to listen to the audio in real-time. If you just needed transcripts, for example to send to some moderation endpoint, you could probably just export the transcript in real-time rather than having an admin client.
Actually its for moderation.
I need to do actions on those clients from my admin room.
Since livekit cloud billing apply to concurrent connections and WebRTC minutes (Time an end user spends connected to our network via WebRTC), do you know if a forwarded participant count as an additionnal participant billing wise ?
Thanks
Yes, those would count towards your WebRTC minutes.
Actually its for moderation.
I need to do actions on those clients from my admin room.
We have a moderation agent demo: dev-day-demos/call-moderation at main · livekit-examples/dev-day-demos · GitHub (it assumes a conversation between a user and a different agent, but the principle would still apply for multiple human users) - that works by the agent joining the individual rooms.