How Jitsi create websocket messges to transfer to prosody

Hi, I am new to Jitsi. I was reading some topics saying that Jitsi is deprecating SCTP and adding WebSocket. My question is, where Jitsi (Jitsi-meet/ Jicofo/ …) is creating WebSocket messages and sending those to prosody? also in which component is receiving those WebSocket messages? If any doc is available that would be really appreciated.
Thank you.

SCTP was previously used for a data channel between the VideoBridge and the participant, to send messages like constraints and stats. This has been replaced with a direct WebSocket between the VideoBridge and the participant. It’s not related to Prosody in any way.

It’s enabled if you set openBridgeChannel: "websocket" in config.js and your VideoBridge is configured correctly to enable websockets. jitsi-videobridge/web-sockets.md at master · jitsi/jitsi-videobridge · GitHub

Once you have it working you can disable SCTP in the configuration of the VideoBridge and in Jicofo.

Thank you, now got a hold of the flow.
one other point, at the start of connection establishment at Signaling part Prosody is used right? does prosody use WebSocket to transfer SDPs?

That’s a separate websocket, unrelated to the JVB one discussed above.

It’s (relatively) standard XMPP over WebSocket (BOSH can also be used) and the media signalling uses Jingle with some Jitsi-specific extensions. The Jingle messages are sent between the client and Jicofo via Prosody. The browser client converts Jingle to and from SDP.

1 Like

hi, If I want to enable a prosody plugin I need to add the file in folder

like this, right?
And where should I enable this, in the Jicofo config file? or just here in jitsi meet?

You enable the custom module in your prosody lua file - /etc/prosody/conf.d/your.domain.com.cfg.lua

1 Like

Thank you Freddie, What I want to accomplish is that, when any moderator grants access to another user as Moderator I want to generate log for these events in Jicofo, so was trying to get prosody events for that to capture, is there any way I can get those prosody XMPP event stanzas in Jicofo?

There is already such log when you enable trace logs: jicofo/ChatRoomImpl.java at b6396a97ed89fa5e65d61302cc81962965dadd8b · bgrozev/jicofo · GitHub

ok, I am trying to check this,
I am trying to docker compose the docker jitsi meet application with Jicofo logging properties .level=FINEST.
but when after docker-compose up command I am only getting jicofo INFO messages


I am trying to build Jicofo git project and manually link jar file in yml file, but that is giving exception after running.

  • ~/jicofo:/usr/share/jicofo

Thank you.

just adding another point.
I’ve downloaded jicofo 6433 latest source code.

but it is giving errors while building.


as said earlier latest master branch can be built but shows error in docker-compose up logs.

Tou need and the dependencies as probably they had changed

ok, I am debugging more to run this (6173) build, I’ll inform if I get success. can you help on this please

I’ve set in Jicofo source code in logging. properties and linked jicofo.jar file in docker.yml file, the jar has modified as I have seen some of my added log, but its only showing INFO logs, my change is not affected like, .level = FINE or .level = TRACE.

@Override
public void ownershipGranted(EntityFullJid s)
{
if (logger.isTraceEnabled())
{
logger.trace("Ownership granted: " + s);
}

    }

and didn’t get any log in this after Granting moderator access.

Hi, damencho, When I am setting another user as Moderator I can get log in :
public void moderatorGranted(EntityFullJid s) method in ChatRoomImpl.java

How can I extract name from EntityFullJid entity?
Also this gives the user who is set as New Admin, but I also want from which admin he has got the new role, like: UserA has granted moderator permission to User B.