Fine-grained control over all conference room events

Hi, Community!

Brief background of what we are trying to make:
We are developing online video consultation service based on Jitsi.
There will be two sides of consultation - user (needs consultation), consultant (provides consultation).
Consultations will be billed per minute, so that we need to have fine-grained control over all conference events (especially - conference start, conference end, user joined, user leaved).

Question 0 - what is the correct way to archieve fine-grained control over all conference room events?

How do I see it (my thoughts might be not correct, cause I’m new to Jitsi):

  1. Conference room should be started on our server and we should subscribe to conference room events, before any user joins.
    Question 1 - how to manually create the conference room without joining it?
    Question 2 - how to subscribe to conference room events without joining it?

  2. We pass conference rooms ID to both user’s and consultant’s browsers using our API.

  3. User and consultant joins conference rooms, using obtained ID. None of them should be moderator (there should be no moderators in conference).
    Question 3 - is it possible to make conference room without moderators?

  4. Video traffic between user and consultant should be encrypted and peer-to-peer (go directly from user’s PC to consultant’s PC, avoiding our servers).
    Question 4 - do I correctly understood, that in conferences where <=2 users, it is default behaviour in Jitsi?

Thanks in advance,

There are no such options.

You can experiment with setting this in jicofo org.jitsi.jicofo.DISABLE_AUTO_OWNER.

Yes, but you need to make sure you have a turn server to fallback to if direct connection is not possible or it will fallback to jvb.

Hi, damencho!

Thank you for fast and informative reply.

Regarding - Question 2 - may be there is way to connect directly to Prosody server and listen all events from all conference rooms?

Best Regards,

You can create a custom module doing that, there are events for room creation and destroy, participants leave and join … There are a plenty of examples in jitsi-meet/resources folder.