-
-
Notifications
You must be signed in to change notification settings - Fork 648
Description
Definitely not a task for this PR, but I'll note that particularly with the introduction of slots, we may want to rethink the role of the MatrixRTCSessionManager going forward.
Currently "one
MatrixRTCSessionManageris required for each MatrixRTC sessionDescription (application, session id) that the client wants to support" - but with us designing MatrixRTC such that clients of the future can add and remove slots on demand, do we really want clients to have to implement their own management of MatrixRTCSessionManager objects? π΅βπ« (It would be non-trivial to manage them, as each Manager object handles a single slot ID across all rooms, so you need to ensure one Manager exists for each slot ID used in 1 or more rooms, if you want to support arbitrary slotsβ¦)A more convenient design from my perspective would be for a single MatrixRTCSessionManager object to be responsible for all rooms and all slot IDs, storing a nested map of type
Map<string, Map<string, MatrixRTCSession>>(room ID β slot ID β session). Which brings me back to #5033 π