Close unopened rooms (subsessions)

Hello, I am trying to implement subsessions in a video call app using ReactJS. Everything is fine I can create subsessions by using createSubsessions method, opening them, assigning users to them and so on. But I’ve hit a wall regarding closing an unopened subsession, is it possible? When I try to do that with closeAllSubsessions it throws an error about ‘room is not started’.

To Recap:

  1. Is it posible to close unopened rooms?
  2. Can you close just one opened room, not all?

I am on Video SDK v1.5.1
Browser: Chrome
Web Isolate: Implemented

Hi @moldovanotiliu ,

Thank you for your post! I see what you’re asking about, and am currently doing some research to see if there’s a workaround for either of these.


1 Like

Hi @moldovanotiliu ,

Due to current limitations, you cannot close an individual subsession. For your first question, a room cannot be closed until it is opened. Is the goal to erase a subsession that may have been created on accident (or a similar scenario)?


1 Like

Yes that would be the goal. In a way we would want to control dynamically the room creation. Let’s say for example: The user wanted to make 2 rooms and he hit create button in UI, but then the user realised he wanted 3, soo he would go back to that UI in which chooses the number of rooms and then assigns 3 rooms. That would be the scope of removing the unassigned rooms, because with the current implementation the user would have created 5 rooms (2 + 3).

We can get around without these 2, if the curent implementation doesn’t support.
And by these 2 I mean:
’ 1. Is it possible to close unopened rooms?
2. Can you close just one opened room, not all?’

In the meantime I have an issue with the assignment of the users in an unopened session, unfortunately. I don’t know if I should create another post, if soo I will do it but in the meantime I will write it here.

I’ve created a session with:
await subsession.createSubsessions('Room ' + (subsessionList.length + 1), 2)

Please take into consideration that I’ve chosen the pattern to be ‘manually assign participants’.

When I try to assign to that unopened room with the command:
await subsession.assignUserToSubsession(userId, subsessionId)

I get this error about invalid parameters:
{type: 'INVALID_PARAMETERS', reason:''} which is not really true, the userId is taken from zmClient.getAllUser() and the session is from subsession.getSubsessionList().

For example:
await subsession.assignUserToSubsession(33555456, ' {08467C29-9DE9-FE05-3539-95CFD7E03BA2}')

Hey @moldovanotiliu

Thanks for sharing the scenario.

The subsessionClient. assignUserToSubsession is used for assigning a user to an opened subsession, which means the subsession should be opened before this operation.

The subsessionClient.openSubsessions method accepts the final subsessions you want, which means the number of the subsessions you created can be more than the number you expected.

For the case you mentioned in the comment, first, he created 2 rooms, then he realized it should be 3.

  • If the subsessions were not opened. then just call the subsessionClient.createSubsessions(1) to add a new subsession, got the subsessionId, and combined it with the previous subsessions.
  • If the subsessions were started. Then should call the subsessionClient.closeAllSubsessions() to close the subsessions first, and then follow the previous step.

Hope this can help you. Please let me know if you have any question about Subsession.


1 Like

Ty for the replies everybody .

Well yes, I could append just one to the already 2, but that wouldn’t help if you had like 10 unopened rooms and you needed 5, right?

From what I saw in the forum for creating a WaitingRoom somebody said that we should use subsessions. Without the ability to close a singular room or open just one (or a combination of these). It is pretty hard to do that when you have a meeting with a lot of users and besides that you use Rooms in the video calls.

My question is:

  1. Will there be in the future the ability to close a singular open/unopened room (or multiples) ?
  2. Is there a workaround to the waiting room, besides the one with subsessions as in my case it is
    impossible without the feature at question 1.

Hey @moldovanotiliu

The subsessionClient.createSubsessions accepts a number parameter to tell the Video SDK how many subsessions you want to create.

For the questions:

  1. Not in the roadmap.
  2. We do have the waiting room feature in the Meeting SDK, if you want to add the feature in the Video SDK, you can file a feature request. We would love to hear from you.


1 Like