I’ve been trying to implement a component in the jicofo side, to understand how signalling from frontend to jicofo works. I took “mute” functionality to understand the flow. When “mute everyone” or “mute” button is clicked, the lib-jitsi-meet sends the payload as shown below in the network request as seen in the chrome developer tools network tab.
<body rid="190487810" sid="f6be6cfa-1b85-4d60-bff9-c13a6c974d3b" xmlns="http://jabber.org/protocol/httpbind"><iq id="6f3dccfb-8a57-4b61-bc24-fd4a80f1b110:sendIQ" to="firstname.lastname@example.org/focus" type="set" xmlns="jabber:client"><muteb jid="email@example.com/aa007f1f" xmlns="http://jitsi.org/jitmeet/audio">true</muteb></iq></body>
Now at the jicofo side, MuteIq and MuteIqHandler defines the component and handleMuteRequest() method is invoked in JitsiMeetConferenceImpl file.
I tried to replicate the same by creating MutebIq and MutebIqHandler and registering component and creating respective handleMutebRequest() in their respective files. When I try to fire the xmpp event from lib-jitsi-meet (by adding few lines of code along side mute functionality) it does not do anything. I tried logging using logger.info() in the handleMutebRequest() but none works. Please help me understand how to implement a custom IQ so that sending that tag in xml does something, just logging for now.
Thank you very much.