jitsi / jitsi-meet

Jitsi Meet - Secure, Simple and Scalable Video Conferences that you use as a standalone app or embed in your web application.
https://jitsi.org/meet
Apache License 2.0
23.22k stars 6.75k forks source link

How i can implement hide TRANSCRIBER from the UI/Conference. #15083

Closed TGC-PratikNanavare closed 1 month ago

TGC-PratikNanavare commented 2 months ago

What happened?

Hello team,

When i start transcripion then the transcriber is joined and showing inside the meeting/UI. I want to hide the transcriber from the meeting.

there any configuration am I missing or I have to update any driver?

image

image

Platform

Browser / app / sdk version

latest

Relevant log output

No response

Reproducibility

More details?

No response

damencho commented 2 months ago

The transcriber need to authenticate with a user created in the domain that is senas hidden domain in the config.js. Similar to jibri https://github.com/jitsi/jibri?tab=readme-ov-file#prosody https://github.com/jitsi/jigasi/blob/c53ba860ae9073bc4ac6bbd4ab2fd9299737c835/jigasi-home/sip-communicator.properties#L166

TGC-PratikNanavare commented 2 months ago

The transcriber need to authenticate with a user created in the domain that is senas hidden domain in the config.js. Similar to jibri https://github.com/jitsi/jibri?tab=readme-ov-file#prosody https://github.com/jitsi/jigasi/blob/c53ba860ae9073bc4ac6bbd4ab2fd9299737c835/jigasi-home/sip-communicator.properties#L166

I need more details informations for this can you please provide if possible?

damencho commented 2 months ago

Do you have a hidden display set in config.js and a virtual host with that name created in prosody? Have you read the part from jibri readme?

TGC-PratikNanavare commented 2 months ago

Do you have a hidden display set in config.js and a virtual host with that name created in prosody? Have you read the part from jibri readme?

Yes I have read the jibri readme. & set hidden display for recording also virtual host.

image

image

image

damencho commented 2 months ago

And have you created the user?

TGC-PratikNanavare commented 2 months ago

And have you created the user?

How i can create user in docker.. Also transcription is not working in active lobby.

TGC-PratikNanavare commented 2 months ago

And have you created the user?

This is my userID in the SIP.

image

damencho commented 2 months ago

For docker, this was just fixed and is in latest master. So you can either switch to use latest images or wait for the next stable release.

TGC-PratikNanavare commented 2 months ago

For docker, this was just fixed and is in latest master. So you can either switch to use latest images or wait for the next stable release.

I am using the 9258 tag version.. so i need to upgrade this version right.

damencho commented 2 months ago

Yep, but there is no stable tag yet. Next stable release docker will have this changes.

TGC-PratikNanavare commented 2 months ago

Yep, but there is no stable tag yet. Next stable release docker will have this changes.

Transcription also not work in active lobby.This is fixed in latest stable version or not.

damencho commented 2 months ago

There is no media when someone is in lobby, so no transcriber there. Is this what you mean?

TGC-PratikNanavare commented 2 months ago

There is no media when someone is in lobby, so no transcriber there. Is this what you mean?

When i start conference with active lobby guest are able to join but when i am trying to start transcription is not working.(Transcription is not entering the conference)

damencho commented 2 months ago

You need to whitelist the transcriber here https://github.com/jitsi/jitsi-meet/blob/01ef23402ec34686dca9cf5498c7cb01ed2ea38f/doc/debian/jitsi-meet-prosody/prosody.cfg.lua-jvb.example#L73

TGC-PratikNanavare commented 2 months ago

You need to whitelist the transcriber here

https://github.com/jitsi/jitsi-meet/blob/01ef23402ec34686dca9cf5498c7cb01ed2ea38f/doc/debian/jitsi-meet-prosody/prosody.cfg.lua-jvb.example#L73

Okay let me check. Thanks for the help.

TGC-PratikNanavare commented 1 month ago

You need to whitelist the transcriber here

https://github.com/jitsi/jitsi-meet/blob/01ef23402ec34686dca9cf5498c7cb01ed2ea38f/doc/debian/jitsi-meet-prosody/prosody.cfg.lua-jvb.example#L73

I have implemented this but it iss not working for me.. can you give me more info.

i had whitelisted transcriber.meet.jitsi

damencho commented 1 month ago

transcriber.meet.jitsi

And you have created that virtual host in prosody? And have added it as a hidden domain in jitsi-meet, have created a transcriber user in that domain and have configured jigasi to use that and the password when connecting to the meetings?

TGC-PratikNanavare commented 1 month ago

transcriber.meet.jitsi

And you have created that virtual host in prosody? And have added it as a hidden domain in jitsi-meet, have created a transcriber user in that domain and have configured jigasi to use that and the password when connecting to the meetings?

Yes I have created virtual host in prosody.

image

image

i am using docker so user and password get automatically generate.

damencho commented 1 month ago

Have you checked jigasi configs and logs is it using the username from that domain and that it connects successfully with it during a call? What does not work? The user is not hidden or the user is not whitelisted for lobby? Share the jigasi logs.

TGC-PratikNanavare commented 1 month ago

image

Have you checked jigasi configs and logs is it using the username from that domain and that it connects successfully with it during a call? What does not work? The user is not hidden or the user is not whitelisted for lobby? Share the jigasi logs.

I am currenty trying to whitelist the transcriber. so that transcriber will work in active lobby.

damencho commented 1 month ago

And if you don't use lobby in the meeting and you turn on the transcriber, is it working and is it hidden (you don't see a thumbnail for it)?

TGC-PratikNanavare commented 1 month ago

And if you don't use lobby in the meeting and you turn on the transcriber, is it working and is it hidden (you don't see a thumbnail for it)?

When i am doing transciption in lobby off the transcriber is joining and working fine but it is not hidden.

damencho commented 1 month ago

nd working fine but it is not hidden.

This means that your transcriber is not using the created user and you cannot whitelist it. You need to first fix so it is hidden and then see whether the whitelisting works.

samadhan-dhangar commented 1 month ago

I facing same issue, lobby off transcriber is joining as user working fine. when lobby active transcriber not working

TGC-PratikNanavare commented 1 month ago

nd working fine but it is not hidden.

This means that your transcriber is not using the created user and you cannot whitelist it. You need to first fix so it is hidden and then see whether the whitelisting works.

I have created the sip-communication in docker.

{{ $ENABLE_TRANSCRIPTIONS := .Env.ENABLE_TRANSCRIPTIONS | default "0" | toBool -}} {{ $JIGASI_BREWERY_MUC := .Env.JIGASI_BREWERY_MUC | default "jigasibrewery" -}} {{ $JIGASI_XMPP_USER := .Env.JIGASI_XMPP_USER | default "jigasi" -}} {{ $JIGASI_JVB_TIMEOUT := .Env.JIGASI_JVB_TIMEOUT | default "30000" -}} {{ $JIGASI_LOCAL_REGION := .Env.JIGASI_LOCAL_REGION | default "" -}} {{ $BOSH_URL_PATTERN := .Env.BOSH_URL_PATTERN | default "" -}} {{ $USE_TRANSLATOR_IN_CONFERENCE := .Env.USE_TRANSLATOR_IN_CONFERENCE | default "0" | toBool -}} {{ $XMPP_AUTH_DOMAIN := .Env.XMPP_AUTH_DOMAIN | default "auth.meet.jitsi" -}} {{ $XMPP_MUC_DOMAIN := .Env.XMPP_MUC_DOMAIN | default "muc.meet.jitsi" -}} {{ $XMPP_GUEST_DOMAIN := .Env.XMPP_GUEST_DOMAIN | default "guest.meet.jitsi" -}} {{ $XMPP_INTERNAL_MUC_DOMAIN := .Env.XMPP_INTERNAL_MUC_DOMAIN | default "internal-muc.meet.jitsi" -}} {{ $XMPP_DOMAIN := .Env.XMPP_DOMAIN | default "meet.jitsi" -}} {{ $XMPP_PORT := .Env.XMPP_PORT | default "5222" -}} {{ $XMPP_SERVER := .Env.XMPP_SERVER | default "xmpp.meet.jitsi" -}} {{ $XMPP_SERVERS := splitList "," $XMPP_SERVER -}} {{ $SHUTDOWN_REST_ENABLED := .Env.SHUTDOWN_REST_ENABLED | default "false" | toBool -}} {{ $DISABLE_SIP := .Env.JIGASI_DISABLE_SIP | default "false" | toBool -}} {{/ assign env from context, preserve during range when . is re-assigned /}} {{ $TRUSTED_DOMAIN_LIST := .Env.JIGASI_TRUSTED_DOMAINS | default "" -}} {{ $TRUSTED_DOMAINS := splitList "," $TRUSTED_DOMAIN_LIST -}} {{ $ENV := .Env -}}

net.java.sip.communicator.impl.protocol.SingleCallInProgressPolicy.enabled=false

Adjust opus encoder complexity

net.java.sip.communicator.impl.neomedia.codec.audio.opus.encoder.COMPLEXITY=10

Disables packet logging

net.java.sip.communicator.packetlogging.PACKET_LOGGING_ENABLED=false

Control REST Shutdown

org.jitsi.jigasi.ENABLE_REST_SHUTDOWN={{ $SHUTDOWN_REST_ENABLED }}

{{ if not $ENABLE_TRANSCRIPTIONS -}}

SIP account

net.java.sip.communicator.impl.protocol.sip.acc1=acc1 {{ if .Env.JIGASI_SIP_SERVER }} net.java.sip.communicator.impl.protocol.sip.acc1.PROXY_ADDRESS={{ .Env.JIGASI_SIP_SERVER }} net.java.sip.communicator.impl.protocol.sip.acc1.PROXY_AUTO_CONFIG=false net.java.sip.communicator.impl.protocol.sip.acc1.PROXY_PORT={{ .Env.JIGASI_SIP_PORT | default "5060" }} net.java.sip.communicator.impl.protocol.sip.acc1.PREFERRED_TRANSPORT={{ .Env.JIGASI_SIP_TRANSPORT | default "UDP" }} {{ end }} {{ if .Env.JIGASI_ENABLE_SDES_SRTP | default "0" | toBool }} net.java.sip.communicator.impl.protocol.sip.acc1.SAVP_OPTION=1 net.java.sip.communicator.impl.protocol.sip.acc1.DEFAULT_ENCRYPTION=true net.java.sip.communicator.impl.protocol.sip.acc1.DEFAULT_SIPZRTP_ATTRIBUTE=false net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL.ZRTP=0 net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL.SDES=1 net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL.DTLS-SRTP=0 net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL_STATUS.ZRTP=false net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL_STATUS.SDES=true net.java.sip.communicator.impl.protocol.sip.acc1.ENCRYPTION_PROTOCOL_STATUS.DTLS-SRTP=false net.java.sip.communicator.impl.protocol.sip.acc1.SDES_CIPHER_SUITES=AES_CM_128_HMAC_SHA1_80,AES_CM_128_HMAC_SHA1_32 {{ end }} net.java.sip.communicator.impl.protocol.sip.acc1.ACCOUNT_UID=SIP\:{{ .Env.JIGASI_SIP_URI }} net.java.sip.communicator.impl.protocol.sip.acc1.PASSWORD={{ .Env.JIGASI_SIP_PASSWORD | b64enc }} net.java.sip.communicator.impl.protocol.sip.acc1.PROTOCOL_NAME=SIP net.java.sip.communicator.impl.protocol.sip.acc1.SERVER_ADDRESS={{ .Env.JIGASI_SIP_SERVER }} net.java.sip.communicator.impl.protocol.sip.acc1.USER_ID={{ .Env.JIGASI_SIP_URI }} net.java.sip.communicator.impl.protocol.sip.acc1.KEEP_ALIVE_INTERVAL=25 net.java.sip.communicator.impl.protocol.sip.acc1.KEEP_ALIVE_METHOD={{ .Env.JIGASI_SIP_KEEP_ALIVE_METHOD | default "OPTIONS" }} net.java.sip.communicator.impl.protocol.sip.acc1.VOICEMAIL_ENABLED=false net.java.sip.communicator.impl.protocol.sip.acc1.JITSI_MEET_ROOM_HEADER_NAME=X-Room-Name net.java.sip.communicator.impl.protocol.sip.acc1.JITSI_MEET_DOMAIN_BASE_HEADER_NAME=X-Domain-Base net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.AMR-WB/16000=750

Temporarily disable G722, see: https://github.com/jitsi/docker-jitsi-meet/issues/1357

net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.G722/8000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.GSM/8000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.H263-1998/90000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.H264/90000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.PCMA/8000=600 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.PCMU/8000=650 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.SILK/12000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.SILK/16000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.SILK/24000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.SILK/8000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.VP8/90000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.iLBC/8000=10 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.opus/48000=1000 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.red/90000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.speex/16000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.speex/32000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.speex/8000=0 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.telephone-event/8000=1 net.java.sip.communicator.impl.protocol.sip.acc1.Encodings.ulpfec/90000=0 net.java.sip.communicator.impl.protocol.sip.acc1.OVERRIDE_ENCODINGS=true net.java.sip.communicator.impl.protocol.sip.acc1.DOMAIN_BASE={{ $XMPP_DOMAIN }} {{ end -}}

XMPP account used for control

{{ range $index, $element := $XMPP_SERVERS -}} {{ $SERVER := splitn ":" 2 $element }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}=acc{{ $index }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.ACCOUNT_UID=Jabber:{{ $JIGASI_XMPP_USER }}@{{ $XMPP_AUTH_DOMAIN }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.USER_ID={{ $JIGASI_XMPP_USER }}@{{ $XMPP_AUTH_DOMAIN }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_SERVER_OVERRIDDEN=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.SERVER_ADDRESS={{ $SERVER._0 }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.SERVER_PORT={{ $SERVER._1 | default $XMPP_PORT }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.PASSWORD={{ $ENV.JIGASI_XMPP_PASSWORD | b64enc }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.AUTO_GENERATE_RESOURCE=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.RESOURCE_PRIORITY=30 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_CARBON_DISABLED=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.DEFAULT_ENCRYPTION=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_USE_ICE=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_ACCOUNT_DISABLED=false net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_PREFERRED_PROTOCOL=false net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.AUTO_DISCOVER_JINGLE_NODES=false net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.PROTOCOL=Jabber net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.IS_USE_UPNP=false net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.USE_DEFAULT_STUN_SERVER=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.ENCRYPTION_PROTOCOL.DTLS-SRTP=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.ENCRYPTION_PROTOCOL_STATUS.DTLS-SRTP=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.VIDEO_CALLING_DISABLED=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.OVERRIDE_ENCODINGS=true net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.G722/8000=705 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.GSM/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.H263-1998/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.H264/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.PCMA/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.PCMU/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.SILK/12000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.SILK/16000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.SILK/24000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.SILK/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.VP8/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.iLBC/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.opus/48000=750 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.speex/16000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.speex/32000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.speex/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.Encodings.telephone-event/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.BREWERY={{ $JIGASI_BREWERY_MUC }}@{{ $XMPP_INTERNAL_MUC_DOMAIN }} net.java.sip.communicator.impl.protocol.jabber.acc{{ $index }}.DOMAIN_BASE={{ $XMPP_DOMAIN }} {{ end -}} org.jitsi.jigasi.BREWERY_ENABLED=true org.jitsi.jigasi.ENABLE_SIP={{ not $DISABLE_SIP }}

org.jitsi.jigasi.HEALTH_CHECK_SIP_URI={{ .Env.JIGASI_HEALTH_CHECK_SIP_URI | default "" }} org.jitsi.jigasi.HEALTH_CHECK_INTERVAL={{ .Env.JIGASI_HEALTH_CHECK_INTERVAL | default "300000" }} org.jitsi.jigasi.HEALTH_CHECK_TIMEOUT=600000

org.jitsi.jigasi.xmpp.acc.IS_SERVER_OVERRIDDEN=true org.jitsi.jigasi.xmpp.acc.SERVER_ADDRESS={{ $XMPP_SERVER }} org.jitsi.jigasi.xmpp.acc.VIDEO_CALLING_DISABLED=true org.jitsi.jigasi.xmpp.acc.JINGLE_NODES_ENABLED=false org.jitsi.jigasi.xmpp.acc.AUTO_DISCOVER_STUN=false org.jitsi.jigasi.xmpp.acc.IM_DISABLED=true org.jitsi.jigasi.xmpp.acc.SERVER_STORED_INFO_DISABLED=true org.jitsi.jigasi.xmpp.acc.IS_FILE_TRANSFER_DISABLED=true {{ if .Env.ENABLE_AUTH | default "0" | toBool }} {{ if .Env.ENABLE_GUESTS | default "0" | toBool }} org.jitsi.jigasi.xmpp.acc.USER_ID={{ $JIGASI_XMPP_USER }}@{{ $XMPP_GUEST_DOMAIN }} org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=true {{ else }} org.jitsi.jigasi.xmpp.acc.USER_ID={{ $JIGASI_XMPP_USER }}@{{ $XMPP_AUTH_DOMAIN }} org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=false {{ end }} org.jitsi.jigasi.xmpp.acc.PASS={{ .Env.JIGASI_XMPP_PASSWORD }} org.jitsi.jigasi.xmpp.acc.ALLOW_NON_SECURE=true {{ end }}

Activate this property if you are using self-signed certificates or other

type of non-trusted certicates. In this mode your service trust in the

remote certificates always.

net.java.sip.communicator.service.gui.ALWAYS_TRUST_MODE_ENABLED=true

{{ if $ENABLE_TRANSCRIPTIONS -}}

Transcription config

org.jitsi.jigasi.ENABLE_TRANSCRIPTION=true org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=true org.jitsi.jigasi.transcription.DIRECTORY=/tmp/transcripts org.jitsi.jigasi.transcription.BASE_URL={{ .Env.PUBLIC_URL }}/transcripts org.jitsi.jigasi.transcription.jetty.port=-1 org.jitsi.jigasi.transcription.ADVERTISE_URL={{ .Env.JIGASI_TRANSCRIBER_ADVERTISE_URL | default "false"}} org.jitsi.jigasi.transcription.SAVE_JSON=false org.jitsi.jigasi.transcription.SEND_JSON=true org.jitsi.jigasi.transcription.SAVE_TXT=false org.jitsi.jigasi.transcription.SEND_TXT={{ .Env.JIGASI_TRANSCRIBER_SEND_TXT | default "false"}} org.jitsi.jigasi.transcription.RECORD_AUDIO={{ .Env.JIGASI_TRANSCRIBER_RECORD_AUDIO | default "false"}} org.jitsi.jigasi.transcription.RECORD_AUDIO_FORMAT=wav {{ end -}}

{{ if .Env.JIGASI_SIP_DEFAULT_ROOM }} org.jitsi.jigasi.DEFAULT_JVB_ROOM_NAME={{ .Env.JIGASI_SIP_DEFAULT_ROOM }} {{ end }}

org.jitsi.jigasi.MUC_SERVICE_ADDRESS={{ $XMPP_MUC_DOMAIN }}

when checking other participants whether they are jibri/jigasi we can also check the the domain they use for connecting

{{ if $TRUSTED_DOMAIN_LIST }} org.jitsi.jigasi.TRUSTED_DOMAINS=[ {{ range $index, $element := $TRUSTED_DOMAINS }}{{ if gt $index 0 }},{{ end }}"{{ $element }}"{{ end}} ] {{ end }}

org.jitsi.jigasi.JVB_INVITE_TIMEOUT={{ $JIGASI_JVB_TIMEOUT }}

{{ if $JIGASI_LOCAL_REGION }} org.jitsi.jigasi.LOCAL_REGION={{ $JIGASI_LOCAL_REGION }} {{ end }}

{{ if $BOSH_URL_PATTERN }} org.jitsi.jigasi.xmpp.acc.BOSH_URL_PATTERN={{ $BOSH_URL_PATTERN }} {{ end }}

{{ if $USE_TRANSLATOR_IN_CONFERENCE }} org.jitsi.jigasi.xmpp.acc.USE_TRANSLATOR_IN_CONFERENCE=true net.java.sip.communicator.impl.protocol.sip.acc1.USE_TRANSLATOR_IN_CONFERENCE=true

Should be enabled when using translator mode

net.java.sip.communicator.impl.neomedia.audioSystem.audiosilence.captureDevice_list=["AudioSilenceCaptureDevice:noTransferData"] {{ end }}

{{ if .Env.JIGASI_CONFIGURATION -}} {{ join "\n" (splitList "," .Env.JIGASI_CONFIGURATION) }} {{ end -}}

damencho commented 1 month ago

That doesn't show anything, as I don't know your setting. Maybe show the result file after starting it.

TGC-PratikNanavare commented 1 month ago

That doesn't show anything, as I don't know your setting. Maybe show the result file after starting it.

You mean logs of the jigasi right.

or the below file

net.java.sip.communicator.impl.protocol.SingleCallInProgressPolicy.enabled=false

Adjust opus encoder complexity

net.java.sip.communicator.impl.neomedia.codec.audio.opus.encoder.COMPLEXITY=10

Disables packet logging

net.java.sip.communicator.packetlogging.PACKET_LOGGING_ENABLED=false

Control REST Shutdown

org.jitsi.jigasi.ENABLE_REST_SHUTDOWN=false

XMPP account used for control

net.java.sip.communicator.impl.protocol.jabber.acc0=acc0 net.java.sip.communicator.impl.protocol.jabber.acc0.ACCOUNT_UID=Jabber:jigasi@auth.meet.jitsi net.java.sip.communicator.impl.protocol.jabber.acc0.USER_ID=jigasi@auth.meet.jitsi net.java.sip.communicator.impl.protocol.jabber.acc0.IS_SERVER_OVERRIDDEN=true net.java.sip.communicator.impl.protocol.jabber.acc0.SERVER_ADDRESS=xmpp.meet.jitsi net.java.sip.communicator.impl.protocol.jabber.acc0.SERVER_PORT=5222 net.java.sip.communicator.impl.protocol.jabber.acc0.PASSWORD=IVFBWlhTV0A= net.java.sip.communicator.impl.protocol.jabber.acc0.AUTO_GENERATE_RESOURCE=true net.java.sip.communicator.impl.protocol.jabber.acc0.RESOURCE_PRIORITY=30 net.java.sip.communicator.impl.protocol.jabber.acc0.IS_CARBON_DISABLED=true net.java.sip.communicator.impl.protocol.jabber.acc0.DEFAULT_ENCRYPTION=true net.java.sip.communicator.impl.protocol.jabber.acc0.IS_USE_ICE=true net.java.sip.communicator.impl.protocol.jabber.acc0.IS_ACCOUNT_DISABLED=false net.java.sip.communicator.impl.protocol.jabber.acc0.IS_PREFERRED_PROTOCOL=false net.java.sip.communicator.impl.protocol.jabber.acc0.AUTO_DISCOVER_JINGLE_NODES=false net.java.sip.communicator.impl.protocol.jabber.acc0.PROTOCOL=Jabber net.java.sip.communicator.impl.protocol.jabber.acc0.IS_USE_UPNP=false net.java.sip.communicator.impl.protocol.jabber.acc0.USE_DEFAULT_STUN_SERVER=true net.java.sip.communicator.impl.protocol.jabber.acc0.ENCRYPTION_PROTOCOL.DTLS-SRTP=0 net.java.sip.communicator.impl.protocol.jabber.acc0.ENCRYPTION_PROTOCOL_STATUS.DTLS-SRTP=true net.java.sip.communicator.impl.protocol.jabber.acc0.VIDEO_CALLING_DISABLED=true net.java.sip.communicator.impl.protocol.jabber.acc0.OVERRIDE_ENCODINGS=true net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.G722/8000=705 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.GSM/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.H263-1998/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.H264/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.PCMA/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.PCMU/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.SILK/12000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.SILK/16000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.SILK/24000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.SILK/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.VP8/90000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.iLBC/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.opus/48000=750 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.speex/16000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.speex/32000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.speex/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.Encodings.telephone-event/8000=0 net.java.sip.communicator.impl.protocol.jabber.acc0.BREWERY=jigasibrewery@internal-muc.meet.jitsi net.java.sip.communicator.impl.protocol.jabber.acc0.DOMAIN_BASE=meet.jitsi org.jitsi.jigasi.BREWERY_ENABLED=true org.jitsi.jigasi.ENABLE_SIP=false

org.jitsi.jigasi.HEALTH_CHECK_SIP_URI= org.jitsi.jigasi.HEALTH_CHECK_INTERVAL=300000 org.jitsi.jigasi.HEALTH_CHECK_TIMEOUT=600000

org.jitsi.jigasi.xmpp.acc.IS_SERVER_OVERRIDDEN=true org.jitsi.jigasi.xmpp.acc.SERVER_ADDRESS=xmpp.meet.jitsi org.jitsi.jigasi.xmpp.acc.VIDEO_CALLING_DISABLED=true org.jitsi.jigasi.xmpp.acc.JINGLE_NODES_ENABLED=false org.jitsi.jigasi.xmpp.acc.AUTO_DISCOVER_STUN=false org.jitsi.jigasi.xmpp.acc.IM_DISABLED=true org.jitsi.jigasi.xmpp.acc.SERVER_STORED_INFO_DISABLED=true org.jitsi.jigasi.xmpp.acc.IS_FILE_TRANSFER_DISABLED=true

org.jitsi.jigasi.xmpp.acc.USER_ID=jigasi@guest.meet.jitsi org.jitsi.jigasi.xmpp.acc.ANONYMOUS_AUTH=true

org.jitsi.jigasi.xmpp.acc.PASS=!QAZXSW@ org.jitsi.jigasi.xmpp.acc.ALLOW_NON_SECURE=true

Activate this property if you are using self-signed certificates or other

type of non-trusted certicates. In this mode your service trust in the

remote certificates always.

net.java.sip.communicator.service.gui.ALWAYS_TRUST_MODE_ENABLED=true

Transcription config

org.jitsi.jigasi.ENABLE_TRANSCRIPTION=true org.jitsi.jigasi.transcription.ENABLE_TRANSLATION=true org.jitsi.jigasi.transcription.DIRECTORY=/tmp/transcripts org.jitsi.jigasi.transcription.BASE_URL=https://pratik.com:9445//transcripts org.jitsi.jigasi.transcription.jetty.port=-1 org.jitsi.jigasi.transcription.ADVERTISE_URL=false org.jitsi.jigasi.transcription.SAVE_JSON=false org.jitsi.jigasi.transcription.SEND_JSON=true org.jitsi.jigasi.transcription.SAVE_TXT=false org.jitsi.jigasi.transcription.SEND_TXT=false org.jitsi.jigasi.transcription.RECORD_AUDIO=false org.jitsi.jigasi.transcription.RECORD_AUDIO_FORMAT=wav

org.jitsi.jigasi.MUC_SERVICE_ADDRESS=muc.meet.jitsi

when checking other participants whether they are jibri/jigasi we can also check the the domain they use for connecting

org.jitsi.jigasi.JVB_INVITE_TIMEOUT=30000

damencho commented 1 month ago

org.jitsi.jigasi.xmpp.acc.USER_ID=jigasi@guest.meet.jitsi

It is not using the correct username.

TGC-PratikNanavare commented 1 month ago

org.jitsi.jigasi.xmpp.acc.USER_ID=jigasi@guest.meet.jitsi

It is not using the correct username.

Which is the correct user name?

aaronkvanmeerten commented 1 month ago

By default it's 'transcriber@recorder.meet.jit.si':

https://github.com/jitsi/docker-jitsi-meet/blob/e7786d5c674be5832c05a8e12837574a889e18a5/jigasi/rootfs/defaults/transcriber-sip-communicator.properties#L7

Are you starting up the transcriber.yml compose file? That's the one you'll want for transcriptions, not the jigasi one (which is meant for SIP only).

damencho commented 1 month ago

And you have created that virtual host in prosody? And have added it as a hidden domain in jitsi-meet, have created a transcriber user in that domain and have configured jigasi to use that and the password when connecting to the meetings?

The one you need to create in the correct domain that will be hidden.

TGC-PratikNanavare commented 1 month ago

By default it's 'transcriber@recorder.meet.jit.si':

https://github.com/jitsi/docker-jitsi-meet/blob/e7786d5c674be5832c05a8e12837574a889e18a5/jigasi/rootfs/defaults/transcriber-sip-communicator.properties#L7

Are you starting up the transcriber.yml compose file? That's the one you'll want for transcriptions, not the jigasi one (which is meant for SIP only).

I have setup latest stable version 9646 in that there is no file like transcriber.yml and transcriber-sip-comunication......

aaronkvanmeerten commented 1 month ago

Apparently I misread and we haven't released to stable since I made these changes. I'll work towards that this week, and apologies for my misunderstanding.

TGC-PratikNanavare commented 1 month ago

Apparently I misread and we haven't released to stable since I made these changes. I'll work towards that this week, and apologies for my misunderstanding.

When it will be released in latest stable. And i also have one question. In that release all transcription issue is fixed?

damencho commented 1 month ago

Yes. We hope to push a new stable in few days.

TGC-PratikNanavare commented 1 month ago

Yes. We hope to push a new stable in few days.

Okay. Thank you so much for the quick resposes.

damencho commented 1 month ago

As this is a configuration issue and is for a different repository (docker-jitsi-meet), I will close the ticket.

Please, when you have questions or problems use the community forum before opening new issues, thank you.

damencho commented 1 month ago

And by the way we have recently updated the Readme of jigasi explaining all this, about the transcriber: https://github.com/jitsi/jigasi?tab=readme-ov-file#using-jigasi-to-transcribe-a-jitsi-meet-conference

TGC-PratikNanavare commented 1 month ago

And by the way we have recently updated the Readme of jigasi explaining all this, about the transcriber: https://github.com/jitsi/jigasi?tab=readme-ov-file#using-jigasi-to-transcribe-a-jitsi-meet-conference

I have upgraded to latest version but still i am not able to on transcription in lobby off and also in lobby on.

Configuration i have done

image

getting below error when i am going for on the transcription

image

damencho commented 1 month ago

Expand the error. You don't need to configure anything in jigasi with the latest version.

TGC-PratikNanavare commented 1 month ago

Expand the error. You don't need to configure anything in jigasi with the latest version.

image

aaronkvanmeerten commented 1 month ago

I suspect something around your jicofo configuration, or your transcriber. Are you starting this all in docker? If so, you should be able to include a transcriber by setting the appropriate env vars in your cfg, such as ENABLE_TRANSCRIPTIONS=1 and any credentials for the backend provider of your choice (gcloud, whisper, OCI, etc), and then including the transcriber.yml in the docker-compose flow: docker-compose -f docker-compose.yml -f transcriber.yml up -d

TGC-PratikNanavare commented 1 month ago

I suspect something around your jicofo configuration, or your transcriber. Are you starting this all in docker? If so, you should be able to include a transcriber by setting the appropriate env vars in your cfg, such as ENABLE_TRANSCRIPTIONS=1 and any credentials for the backend provider of your choice (gcloud, whisper, OCI, etc), and then including the transcriber.yml in the docker-compose flow: docker-compose -f docker-compose.yml -f transcriber.yml up -d

Yes i am using docker.

I have added all this configurations in .env file

ENABLE_TRANSCRIPTIONS=1 JIGASI_TRANSCRIBER_PASSWORD=Pratik and gcloud also

aaronkvanmeerten commented 1 month ago

And are you using transcriber.yml in docker-compose?

TGC-PratikNanavare commented 1 month ago

And are you using transcriber.yml in docker-compose?

Yes.

aaronkvanmeerten commented 1 month ago

we'd need to see jicofo container logs next to diagnose the issue I suspect.

aaronkvanmeerten commented 1 month ago

and transcriber container logs, and prosody container logs, to be complete

aaronkvanmeerten commented 1 month ago

Can you please post to community.jitsi.org and link it here/

TGC-PratikNanavare commented 1 month ago

Can you please post to community.jitsi.org and link it here/

Okay.

TGC-PratikNanavare commented 1 month ago

we'd need to see jicofo container logs next to diagnose the issue I suspect.

In this i get the error like this "Unable to invite transcriber due to no Jigasi instances being available" i also need to run jigasi container?

image