I was wondering whether it is possible to collaborate across rooms in some way using the LCCS API.
Currently, there's a per room limit of couple of thousand(not sure abt the exact number). Say a room hits the upper limit, is there a way that we could create a new room and still be able to access the streams of the first room using the reference of the first?
You could definitely federate between multiple rooms' data messages using
the server-to-server APIs (have your server subscribe to those data messages
and then re-publish them into the next room). We don't currently have a way
to federate the A/V streams of multiple rooms however. What's the use case?
You looking to broadcast A/V to 1000s of people?
Yeah, my use-case is something like that. I'm trying to create a public room where people can log-in and start one-to-one chats or multi-party conferences. And from a scaling pov I was wondering how much will be too much and if we had a way around the max participant limit and be able to scale only when I absolutely need to.
Sure, you might say that I could create separate rooms for individual chats/conferences, but then I've to manage the communication of the room-ids etc for each participant before they can connect. That seems to me the only way around this problem.
That's exactly what I would say - you should definitely be setting up rooms
for individual conversations - that way your app will scale nearly
indefinitely. It's not so hard to do - have the initiating participant
request a room from your server, then create one and send it back to that
participant. From there, when he invites to the chat, he sends the roomURL
to the other participant privately. Keep track of what rooms have been
created that day (in a DB), then once a day clear up rooms that are older
than a certain age.