Conference room services
Service name
service name: SippoAS.qss.rooms-basic
Service hierarchy: sippoas/qss/lib/services/rooms
Functionality
This service manages the creation/update/deletion of conference rooms in the audio MUC and video SFU via the dispatcher service.
Service Configuration
The configuration of this service is placed in the config.json:
// skipped code
"rooms": {
"collectionType": "janus",
"setOwner": true,
"updateRoomOnwerWhenLeaves": false,
"janusAddress": "http://dispatcher:8020",
"removeAfter": 0,
"participantsLimit": 5,
"notInACall": true,
"userIdAsRoomId": true
},
// skipped code
Where the meaning of each field is:
janusAddress: URL of the dispatcher service to be contacted for conference room management.
removeAfter: wait X milliseconds before removing a peer from the conference room when that peer (a registry object) unregisters or loses connection with qss. Its value as default should be 0 (leave the conference room immediately).
participantsLimit: max number of participants which can be inside a conference room. When this value is reached, an error is returned when adding a new user to the conference room.
notInACall: When this flag is false, a user can create as many conference rooms as he wants. If this flag is true, a user will be able to create a new room depending on how the conference state service was configured.
userIdAsRoomId: When this flag is true, the roomId will be equals to the username of who creates the room.
collectionType: indicate if it is used the dispatcher or a mongo collection to save data related with the rooms. In order to “janusAddress” makes sense, this key has to be filled with “janus”.
setOwner: If this flag is true, the rooms have an owner and only an owner could perform some actions in the room.
updateRoomWhenOwnerLeaves: If this flag is true, when the owner of the room leaves it then a new owner is chosen from the available users in the room.
Log messages
Level |
Message |
---|---|
Debug |
“create”, peer, record |
Debug |
“update”, peer, id, acl, record, dryRun |
Debug |
“close”, peer, id, |
Debug |
“leave”, peer, id, |
Debug |
“destroying the room”, roomId |
Debug |
“try to know if the user can create a room”, peer |
Troubleshooting & caveats
If the service is not working as expected, a few steps to follow:
Verify that the message broker is up and running.
Verify that the service is connected to the message broker.
Verify that the URL of the sippo-server services API is correct.