Jigasi Transcriber needs to be hidden participant

Hello all,

I have installed jitsi/jibri/jigasi with Transcriber and everything is working fine but i would like to configure Transcriber to join as hidden participant.
If i understand this correctly i should :

  1. Jigasi config
    org.jitsi.jigasi.xmpp.acc.USER_ID=
    org.jitsi.jigasi.xmpp.acc.PASS=
    net.java.sip.communicator.impl.protocol.jabber.acc-xmpp-1.BREWERY
  2. Jicofo config
    org.jitsi.jicofo.jigasi.BREWERY
  3. Prosody
    Create that user in prosody for recorder@doman.com because jibri is already connecting there as hidden participant and it is hidden domain

Please confirm if this is enough.

My question is , if we set jigasi to connect to hidden domain what will happen when participants joins via SIP audio call (incoming or outgoing call). Will they will be hidden too ?

Final goal is to be able to call participants via audio and to have transcriber join as hidden partipant. Is this possible ?

Regards,

You can use two jigasi instances, one for dial-in and one for transcriptions.

Actually we have this, you may try it out:

We haven’t used it in a while, but should be there.

Thanks for reply.

Transcription works fine as hidden participant, only “TR” is shown and looks great but when i call someone from the conference that participant is hidden too.

I tried to set

net.java.sip.communicator.impl.protocol.sip.acc1403273890647.PREVENT_AUTH_LOGIN=true

but i am getting and error below :

2022-09-28 08:43:12.615 WARNING: [74] org.jitsi.jigasi.JvbConference.leaveConferenceRoom().1123 [ctx=16643545922051928876183] MUC room is null
2022-09-28 08:43:22.254 SEVERE: [70] org.jitsi.jigasi.xmpp.CallControlMucActivator.processIQInternal().626 [ctx=16643545922051928876183] Error processing RayoIq
java.lang.Exception: Fail to join muc!
	at org.jitsi.jigasi.xmpp.CallControlMucActivator$WaitToJoinRoom.waitToJoinRoom(CallControlMucActivator.java:725)
	at org.jitsi.jigasi.xmpp.CallControlMucActivator$DialIqHandler.setDialResponseAndRegisterHangUpHandler(CallControlMucActivator.java:658)
	at org.jitsi.jigasi.xmpp.CallControlMucActivator$DialIqHandler.processIQInternal(CallControlMucActivator.java:615)
	at org.jitsi.jigasi.xmpp.CallControlMucActivator$DialIqHandler.lambda$processIQ$0(CallControlMucActivator.java:576)
	at java.base/java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:515)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:829)

Just to recapitulate what has been done in case anyone wants to have transcriber as hidden participant.

Jigasi config

net.java.sip.communicator.impl.protocol.jabber.acc-xmpp-1.ACCOUNT_UID=Jabber:jigasi@recorder.<DOMAIN>
net.java.sip.communicator.impl.protocol.jabber.acc-xmpp-1.USER_ID=jigasi@recorder.<DOMAIN>
net.java.sip.communicator.impl.protocol.jabber.acc-xmpp-1.BREWERY=JigasiBrewery@internal.auth.<DOMAIN>
org.jitsi.jigasi.ALLOWED_JID=JigasiBrewery@internal.auth.<DOMAIN>
org.jitsi.jigasi.BREWERY_ENABLED=true
org.jitsi.jigasi.xmpp.acc.USER_ID=jigasi@recorder.<DOMAIN>
org.jitsi.jigasi.xmpp.acc.PASS=<PASSWORD>
org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false

#net.java.sip.communicator.impl.protocol.sip.acc1403273890647.BOSH_URL_PATTERN=https://{host}{subdomain}/http-bind?room={roomName}
net.java.sip.communicator.impl.protocol.sip.acc1403273890647.DOMAIN_BASE=<DOMAIN>
org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=true
org.jitsi.jigasi.xmpp.acc.USE_TRANSLATOR_IN_CONFERENCE=true
org.jitsi.jigasi.transcription.USE_VIDEO_MODEL = true

Jicofo config

org.jitsi.jicofo.jigasi.BREWERY=JigasiBrewery@internal.auth.<DOMAIN>

Nginx config

hiddenDomain: 'recorder.m.<DOMAIN>',
transcribingEnabled: true,

Prosody

prosodyctl register jigasi recorder.<DOMAIN>

Component "internal.auth.<DOMAIN>" "muc"
    modules_enabled = {
      "ping";
    }
    storage = "memory"
    muc_room_cache_size = 1000

VirtualHost "recorder.<DOMAIN>"
  modules_enabled = {
    "ping";
  }
  authentication = "internal_plain"

  Component "callcontrol.<DOMAIN>"
  component_secret = ""

@damencho Is there anything else we can try in order to achieve this or we should move on to having two jigasi instances.
In case so, any hint on how jitsi/jicofo will know which one to use as transcriber and which one for audio calls ?

Regards,

Do you allow anonymous connect on the main domain?

Nou, we have token authentication enabled on main domain.

Then net.java.sip.communicator.impl.protocol.sip.acc1403273890647.PREVENT_AUTH_LOGIN=true will not work.
You need two instances.