[Setup / Guide] Jitsi Meet Native + Multiple (6) Jibri Docker instances working on the same AWS server

Hi,
I checked,
(I’ve deployed jibri on the same server, so as mentioned, I hadn’t used the PUBLIC_URL part, On your suggestion, I added it and checked. I still have the same issue.

My /jibri*/logs/log0.txt has
“org.jivesoftware.smack.SmackException$EndpointConnectionException: The following addresses failed: ‘RFC 6120 A/AAAA Endpoint + [mydomain.com:5222] (mydomain.com/44.200.20.165:5222)’ failed because: java.net.SocketTimeoutException: connect timed out”

And my jicofo logs have
“Jicofo 2022-03-29 07:29:26.275 SEVERE: [41] JibriSession.startInternal#308: Unable to find an available Jibri, can’t start”

Jibri is unable to connect to Prosody. Exec into the prosody container and try to ping jibri IP. If it’s working fine then the connection from prosody to jibri and vice-versa is fine. Run the docker network inspect network_name command to check whether jibri and prosody both are in the same network.

Hey,
So, my prosody service runs on local machine and I have docker containers for jibri. I checked with the ping, it works fine. I changed the jibri container’s network to host, It still gives the same errors. Is there something else that I’m missing?

Hi @omer.butt.cns I’m facing the exact same issue. Were you able to resolve the issue ?

Hi, I’m facing this issue. Here are the logs:

Jibri 2022-04-14 12:49:54.435 INFO: [1] XmppApi.start#156: Connecting to xmpp environment on spaces.mydomain.one with config XmppEnvironmentConfig(name=<no value>, xmppServerHosts=[spaces.mydomain.one], xmppDomain=spaces.mydomain.one, baseUrl=https://spaces.mydomain.one, controlLogin=XmppCredentials(domain=auth.spaces.mydomain.one, port=null, username=jibri, password=*****), controlMuc=XmppMuc(domain=internal.auth.spaces.mydomain.one, roomName=jibribrewery, nickname=jibri-338329852), sipControlMuc=null, callLogin=XmppCredentials(domain=recorder.spaces.mydomain.one, port=null, username=recorder, password=*****), stripFromRoomDomain=conference., usageTimeoutMins=0, trustAllXmppCerts=true, securityMode=null) Jibri 2022-04-14 12:49:54.436 INFO: [1] XmppApi.start#168: The trustAllXmppCerts config is enabled for this domain, all XMPP server provided certificates will be accepted Jibri 2022-04-14 12:49:54.467 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: FallbackSupplier: checking for value via suppliers: ConfigSourceSupplier: key: 'http_api_port', type: 'kotlin.Int', source: 'command line args' ConfigSourceSupplier: key: 'jibri.api.http.external-api-port', type: 'kotlin.Int', source: 'config' Jibri 2022-04-14 12:49:54.470 INFO: [31] [hostname=spaces.mydomain.one id=spaces.mydomain.one] MucClient.initializeConnectAndJoin#278: Initializing a new MucClient for [ org.jitsi.xmpp.mucclient.MucClientConfiguration id=spaces.mydomain.one domain=auth.spaces.mydomain.one hostname=spaces.mydomain.one port=null username=jibri mucs=[jibribrewery@internal.auth.spaces.mydomain.one] mucNickname=jibri-338329852 disableCertificateVerification=true] Jibri 2022-04-14 12:49:54.471 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: ConfigSourceSupplier: Trying to retrieve key 'http_api_port' from source 'command line args' as type kotlin.Int Jibri 2022-04-14 12:49:54.471 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: FallbackSupplier: failed to find value via ConfigSourceSupplier: key: 'http_api_port', type: 'kotlin.Int', source: 'command line args': org.jitsi.metaconfig.ConfigException$UnableToRetrieve$NotFound: not found Jibri 2022-04-14 12:49:54.472 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: ConfigSourceSupplier: Trying to retrieve key 'jibri.api.http.external-api-port' from source 'config' as type kotlin.Int Jibri 2022-04-14 12:49:54.472 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: ConfigSourceSupplier: Successfully retrieved key 'jibri.api.http.external-api-port' from source 'config' as type kotlin.Int Jibri 2022-04-14 12:49:54.473 FINE: [1] MainKt$setupMetaconfigLogger$1.debug#232: FallbackSupplier: value found via ConfigSourceSupplier: key: 'jibri.api.http.external-api-port', type: 'kotlin.Int', source: 'config' Jibri 2022-04-14 12:49:54.473 INFO: [1] MainKt.main#152: Using port 2222 for HTTP API Jibri 2022-04-14 12:49:54.503 WARNING: [31] MucClient.createXMPPTCPConnectionConfiguration#116: Disabling certificate verification! Jibri 2022-04-14 12:49:54.554 INFO: [31] [hostname=spaces.mydomain.one id=spaces.mydomain.one] MucClient.initializeConnectAndJoin#340: Dispatching a thread to connect and login. Jibri 2022-04-14 12:50:24.548 WARNING: [30] org.jivesoftware.smackx.ping.PingManager.pingServerIfNecessary: XMPPTCPConnection[not-authenticated] (0) was not authenticated Jibri 2022-04-14 12:50:24.607 WARNING: [31] [hostname=spaces.mydomain.one id=spaces.mydomain.one] MucClient.lambda$getConnectAndLoginCallable$7#630: Error connecting: org.jivesoftware.smack.SmackException$EndpointConnectionException: The following addresses failed: 'RFC 6120 A/AAAA Endpoint + [spaces.mydomain.one:5222] (spaces.mydomain.one/127.0.0.1:5222)' failed because: java.net.ConnectException: Connection refused (Connection refused), 'RFC 6120 A/AAAA Endpoint + [spaces.mydomain.one:5222] (spaces.mydomain.one/3.108.251.52:5222)' failed because: java.net.SocketTimeoutException: connect timed out at org.jivesoftware.smack.SmackException$EndpointConnectionException.from(SmackException.java:334) at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.java:664) at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.java:849) at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.java:526) at org.jitsi.xmpp.mucclient.MucClient.lambda$getConnectAndLoginCallable$7(MucClient.java:625) at org.jitsi.retry.RetryStrategy$TaskRunner.run(RetryStrategy.java:167) 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.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304) 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)

.env file content

PUBLIC_URL=https://spaces.mydomain.one
XMPP_AUTH_DOMAIN=auth.spaces.mydomain.one
XMPP_INTERNAL_MUC_DOMAIN=internal.auth.spaces.mydomain.one
XMPP_RECORDER_DOMAIN=recorder.spaces.mydomain.one
XMPP_SERVER=spaces.mydomain.one
XMPP_DOMAIN=spaces.mydomain.one
JIBRI_XMPP_USER=jibri
JIBRI_XMPP_PASSWORD=Porsche911
JIBRI_BREWERY_MUC=jibribrewery
JIBRI_RECORDER_USER=recorder
JIBRI_RECORDER_PASSWORD=Porsche911
JIBRI_RECORDING_DIR=/config/recordings
JIBRI_FINALIZE_RECORDING_SCRIPT_PATH=/config/finalize.sh
 
JIBRI_STRIP_DOMAIN_JID=conference
JIBRI_LOGS_DIR=/config/logs
DISPLAY=:0=

jicofo.conf :

jicofo { authentication: { enabled: true type: XMPP login-url: spaces.mydomain.one } xmpp: { client: { client-proxy: focus.spaces.mydomain.one } trusted-domains: [ "recorder.spaces.mydomain.one" ] } bridge: { brewery-jid: "JvbBrewery@internal.auth.spaces.mydomain.one" } jibri: { brewery-jid: "JibriBrewery@internal.auth.spaces.mydomain.one" pending-timeout: 90 seconds } }

prosody → mydomain.cfg.lua

    admins = { "focus@auth.spaces.mydomain.one", "jvb@auth.spaces.mydomain.one", "jibri@auth.spaces.mydomain.one" }
    muc_room_locking = false
    muc_room_default_public_jids = true
    muc_room_cache_size = 1000
    c2s_require_encryption = false

VirtualHost "auth.spaces.mydomain.one"
    ssl = {
        key = "/etc/prosody/certs/auth.spaces.mydomain.one.key";
        certificate = "/etc/prosody/certs/auth.spaces.mydomain.one.crt";
    }
    modules_enabled = {
        "limits_exception";
    }
    authentication = "internal_hashed"

VirtualHost "recorder.spaces.mydomain.one"
    modules_enabled = {
        "ping";
    }
    authentication = "internal_plain"
    c2s_require_encryption = false
    allow_empty_token = true


-- Proxy to jicofo's user JID, so that it doesn't have to register as a component.
Component "focus.spaces.mydomain.one" "client_proxy"
    target_address = "focus@auth.spaces.mydomain.one"

Component "speakerstats.spaces.mydomain.one" "speakerstats_component"
    muc_component = "conference.spaces.mydomain.one"

Component "conferenceduration.spaces.mydomain.one" "conference_duration_component"
    muc_component = "conference.spaces.mydomain.one"

Component "avmoderation.spaces.mydomain.one" "av_moderation_component"
    muc_component = "conference.spaces.mydomain.one"

Component "lobby.spaces.mydomain.one" "muc"
    storage = "memory"
    restrict_room_creation = true
    muc_room_locking = false
    muc_room_default_public_jids = true
    modules_enabled = {
        "muc_rate_limit";
        "polls";
    }

Any help is deeply appreciated.

some files are no longer present for example:

nano /etc/jitsi/jicofo/sip-communicator.properties

Do you have a current version of this tutorial?

It now uses jicofo.conf (/etc/jitsi/jicofo/jicofo.conf). You add the config like this:

  jibri: {
    brewery-jid: "JibriBrewery@internal.auth.your.domain.com"
    pending-timeout: 90 seconds
  }

Thank you very much friend. and how do i add

org.jitsi.jicofo.auth.URL=XMPP:my.domain.com

Is there anything besides these 2 fields that needs to be updated to work with current versions?

does the record button appear automatically or do I need to edit the interface file?

Thanks for all the support from the community and especially Freddie for the help.

Unfortunately I was not successful in recording.

clicking the record button Jitsi simply does nothing.

-No errors in Chrome console
-Server CPU usage goes up for 1 or 2 seconds and then goes back to normal 0%

When I run

dpkg -l "jitsi-*" "jicofo*" "prosody*" | egrep '^ii'

I have this output:

ii  jicofo                1.0-874-1           all          JItsi Meet COnference FOcus
ii  jitsi-meet            2.0.7210-1          all          WebRTC JavaScript video conferences
ii  jitsi-meet-prosody    1.0.6091-1          all          Prosody configuration for Jitsi Meet
ii  jitsi-meet-turnserver 1.0.6091-1          all          Configures coturn to be used with Jitsi Meet
ii  jitsi-meet-web        1.0.6091-1          all          WebRTC JavaScript video conferences
ii  jitsi-meet-web-config 1.0.6091-1          all          Configuration for web serving of Jitsi Meet
ii  jitsi-videobridge2    2.1-665-g3a90ccdc-1 all          WebRTC compatible Selective Forwarding Unit (SFU)
ii  prosody               0.12.0-1~bionic1    amd64        Lightweight Jabber/XMPP server

I did exactly as in the article.

It made me think:

  • Do I need to change the

authentication="internal_plain"

or can I keep it as it was before?

  • Do I need to manually register users in Prosody?

My current users are:

-rw-r----- 1 prosody prosody 218 May  8 16:08 /var/lib/prosody/auth%2emy%2esite%2ecom%2ebr/accounts/focus.dat
-rw-r----- 1 prosody prosody 218 May  8 16:46 /var/lib/prosody/auth%2emy%2esite%2ecom%2ebr/accounts/jibri.dat
-rw-r----- 1 prosody prosody 218 May  8 16:08 /var/lib/prosody/auth%2emy%2esite%2ecom%2ebr/accounts/jvb.dat
-rw-r----- 1 prosody prosody 218 May  8 17:06 /var/lib/prosody/auth%2emy%2esite%2ecom%2ebr/accounts/recorder.dat
-rw-r----- 1 prosody prosody  45 May  8 17:19 /var/lib/prosody/my%2esite%2ecom%2ebr/accounts/fabricando.dat
-rw-r----- 1 prosody prosody  45 May  8 16:47 /var/lib/prosody/recorder%2emy%2esite%2ecom%2ebr/accounts/recorder.dat

Do I need to add any more users?

Do I need to add user for the other subdomains?

auth.
internal.
internal.auth
recorder.

In my JICOFO.LOG file I have the following:

Jicofo 2022-05-08 17:23:59.524 INFO: [60] JibriDetector.instanceFailed#88: Instance failed: jibribrewery@internal.auth.meu.site.com.br/jibri-665345407. Will not be selected for the next PT1M
Jicofo 2022-05-08 17:23:59.525 WARNING: [60] [room=priorcraftsdamageclearly@conference.meu.site.com.br meeting_id=febc3d7c-3ba6-4ba9-84c7-07e2de72fef5] JibriRecorder.handleStartRequest#128: Failed to start a Jibri session: Internal server error

I find this strange because 2 years ago I implemented several Jitsi+Jibri servers, but it seems that a lot has changed.

Your jicofo.conf should look something like this:

jicofo {
  xmpp: {
    client: {
      client-proxy: focus.jitsi.mydomain.com
    }
    trusted-domains: [ "recorder.jitsi.mydomain.com" ]
  }
  jibri: {
    brewery-jid: "JibriBrewery@internal.auth.jitsi.mydomain.com"
    pending-timeout: 90 seconds
  }
}

For the error you’re reporting, you should look in your jibri log (/var/log/jitsi/jibri/log.0.txt)

My Log Jibri 1

Summary

Jibri 2022-05-09 00:51:50.283 FINE: [20] WebhookClient$updateStatus$1.invokeSuspend#107: Updating 0 subscribers of status
Jibri 2022-05-09 00:52:19.344 FINE: [149] [hostname=my.site.com.br id=my.site.com.br] MucClient$3.handleIQRequest#503: Received an IQ with type set: IQ Stanza (jibri http://jitsi.org/protocol/jibri) [to=jibri@auth.my.site.com.br/DoWoJr297xQN,from=jibribrewery@internal.auth.my.site.com.br/focus,id=amlicmlAYXV0aC5pcHZtejlnYWhhbHhydC5wcm92YXNlbGl0ZS5jb20uYnIvRG9Xb0pyMjk3eFFOAEJJWFkyLTU1MTIAf1HrkgjyPnU=,type=set,]
Jibri 2022-05-09 00:52:19.344 INFO: [149] XmppApi.handleJibriIq#230: Received JibriIq from environment [MucClient id=my.site.com.br hostname=my.site.com.br]
Jibri 2022-05-09 00:52:19.344 INFO: [149] XmppApi.handleStartJibriIq#262: Received start request, starting service
Jibri 2022-05-09 00:52:19.348 INFO: [149] XmppApi.handleStartService#373: Parsed call url info: CallUrlInfo(baseUrl=https://my.site.com.br, callName=casualrecoveriesdeviseinitially, urlParams=)
Jibri 2022-05-09 00:52:19.348 INFO: [149] JibriManager.startFileRecording#138: Starting a file recording with params: FileRecordingRequestParams(callParams=CallParams(callUrlInfo=CallUrlInfo(baseUrl=https://my.site.com.br, callName=casualrecoveriesdeviseinitially, urlParams=), email=’’, passcode=null, callStatsUsernameOverride=, displayName=), sessionId=hsbuqnmeoqmyhvzq, callLoginParams=XmppCredentials(domain=recorder.my.site.com.br, port=null, username=recorder, password=*****))
Jibri 2022-05-09 00:52:19.349 FINE: [149] [session_id=hsbuqnmeoqmyhvzq] FfmpegCapturer.#88: Detected os as OS: LINUX
Jibri 2022-05-09 00:52:19.350 FINE: [149] MainKt$setupMetaconfigLogger$1.debug#232: ConfigSourceSupplier: Trying to retrieve key ‘jibri.chrome.flags’ from source ‘config’ as type kotlin.collections.List<kotlin.String>
Jibri 2022-05-09 00:52:19.350 FINE: [149] MainKt$setupMetaconfigLogger$1.debug#232: ConfigSourceSupplier: Successfully retrieved key ‘jibri.chrome.flags’ from source ‘config’ as type kotlin.collections.List<kotlin.String>
Starting ChromeDriver 96.0.4664.45 (76e4c1bb2ab4671b8beba3444e61c0f17584b2fc-refs/branch-heads/4664@{#947}) on port 13267
Only local connections are allowed.
Please see ChromeDriver - WebDriver for Chrome - Security Considerations for suggestions on keeping ChromeDriver safe.
ChromeDriver was started successfully.
Jibri 2022-05-09 00:52:50.283 FINE: [20] WebhookClient$updateStatus$1.invokeSuspend#107: Updating 0 subscribers of status
Jibri 2022-05-09 00:53:19.382 SEVERE: [149] XmppApi.handleStartJibriIq#294: Error starting Jibri service
org.openqa.selenium.WebDriverException: unknown error: DevToolsActivePort file doesn’t exist
(Driver info: chromedriver=96.0.4664.45 (76e4c1bb2ab4671b8beba3444e61c0f17584b2fc-refs/branch-heads/4664@{#947}),platform=Linux 4.15.0-176-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 60.01 seconds
Build info: version: ‘unknown’, revision: ‘unknown’, time: ‘unknown’
System info: host: ‘8be404fc67a3’, ip: ‘172.18.0.7’, os.name: ‘Linux’, os.arch: ‘amd64’, os.version: ‘4.15.0-176-generic’, java.version: ‘11.0.14’
Driver info: driver.version: ChromeDriver
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at java.base/jdk.internal.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
at java.base/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
at java.base/java.lang.reflect.Constructor.newInstance(Constructor.java:490)
at org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214)
at org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$new$0(JsonWireProtocolResponse.java:53)
at org.openqa.selenium.remote.JsonWireProtocolResponse.lambda$getResponseFunction$2(JsonWireProtocolResponse.java:91)
at org.openqa.selenium.remote.ProtocolHandshake.lambda$createSession$0(ProtocolHandshake.java:123)
at java.base/java.util.stream.ReferencePipeline$3$1.accept(ReferencePipeline.java:195)
at java.base/java.util.Spliterators$ArraySpliterator.tryAdvance(Spliterators.java:958)
at java.base/java.util.stream.ReferencePipeline.forEachWithCancel(ReferencePipeline.java:127)
at java.base/java.util.stream.AbstractPipeline.copyIntoWithCancel(AbstractPipeline.java:502)
at java.base/java.util.stream.AbstractPipeline.copyInto(AbstractPipeline.java:488)
at java.base/java.util.stream.AbstractPipeline.wrapAndCopyInto(AbstractPipeline.java:474)
at java.base/java.util.stream.FindOps$FindOp.evaluateSequential(FindOps.java:150)
at java.base/java.util.stream.AbstractPipeline.evaluate(AbstractPipeline.java:234)
at java.base/java.util.stream.ReferencePipeline.findFirst(ReferencePipeline.java:543)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:126)
at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:73)
at org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:136)
at org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543)
at org.openqa.selenium.remote.RemoteWebDriver.startSession(RemoteWebDriver.java:207)
at org.openqa.selenium.remote.RemoteWebDriver.(RemoteWebDriver.java:130)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:181)
at org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:168)
at org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:198)
at org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:168)
at org.jitsi.jibri.service.impl.FileRecordingJibriService.(FileRecordingJibriService.kt:109)
at org.jitsi.jibri.service.impl.FileRecordingJibriService.(FileRecordingJibriService.kt:102)
at org.jitsi.jibri.JibriManager.startFileRecording(JibriManager.kt:139)
at org.jitsi.jibri.api.xmpp.XmppApi.handleStartService(XmppApi.kt:377)
at org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq(XmppApi.kt:269)
at org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq(XmppApi.kt:237)
at org.jitsi.jibri.api.xmpp.XmppApi.handleIq(XmppApi.kt:219)
at org.jitsi.xmpp.mucclient.MucClient.handleIq(MucClient.java:541)
at org.jitsi.xmpp.mucclient.MucClient.access$400(MucClient.java:51)
at org.jitsi.xmpp.mucclient.MucClient$3.handleIQRequest(MucClient.java:504)
at org.jivesoftware.smack.AbstractXMPPConnection$3.run(AbstractXMPPConnection.java:1565)
at org.jivesoftware.smack.AbstractXMPPConnection$10.run(AbstractXMPPConnection.java:2143)
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)

I noticed that in the first line along with the JIBRI user there is the user:?

jibribrewery@internal.auth.my.site.com.br

I need to add it with the command

prosodyctl register jibribrewery internal.auth.my.site.com.br mypass

??

NOTE:
As in the tutorial I am running Jibri on Docker

Are the users I sent earlier correct?

did you see something that helped you understand the problem in the log?

No, that’s the brewery that Jibri instances join to register their presence for Jicofo. You don’t need to create it as a user.

I’m not very familiar with docker, so I may not be able to help with anything that’s specific to the docker environment.

But from the log I sent you above, did you see any problems?

I just found this in my jitsi log

Summary

Jicofo 2022-05-10 16:03:28.430 INFO: [49] JibriDetector.instanceFailed#88: Instance failed: jibribrewery@internal.auth.my.site.com.br/jibri-653377714. Will not be selected for the next PT1M
Jicofo 2022-05-10 16:03:28.431 WARNING: [49] [room=stats@conference.my.site.com.br meeting_id=4800beb3-edfd-4808-92ab-f88de0583fc7] JibriRecorder.handleStartRequest#128: Failed to start a Jibri session: Internal server error
org.jitsi.jicofo.jibri.JibriSession$StartException$InternalServerError: Internal server error
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:333)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriSession.retryRequestWithAnotherJibri(JibriSession.java:598)
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:329)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriSession.retryRequestWithAnotherJibri(JibriSession.java:598)
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:329)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriSession.retryRequestWithAnotherJibri(JibriSession.java:598)
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:329)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriSession.retryRequestWithAnotherJibri(JibriSession.java:598)
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:329)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriSession.retryRequestWithAnotherJibri(JibriSession.java:598)
at org.jitsi.jicofo.jibri.JibriSession.startInternal(JibriSession.java:329)
at org.jitsi.jicofo.jibri.JibriSession.start(JibriSession.java:285)
at org.jitsi.jicofo.jibri.JibriRecorder.handleStartRequest(JibriRecorder.kt:112)
at org.jitsi.jicofo.jibri.BaseJibri.doHandleIQRequest(BaseJibri.kt:170)
at org.jitsi.jicofo.jibri.BaseJibri.incomingIqQueue$lambda-0(BaseJibri.kt:56)
at org.jitsi.utils.queue.PacketQueue$HandlerAdapter.handleItem(PacketQueue.java:416)
at org.jitsi.utils.queue.AsyncQueueHandler$1.run(AsyncQueueHandler.java:136)
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)
Jicofo 2022-05-10 16:03:28.432 WARNING: [49] [room=stats@conference.my.site.com.br meeting_id=4800beb3-edfd-4808-92ab-f88de0583fc7] BaseJibri.doHandleIQRequest#165: Ignored Jibri request from non-moderator.

My Jicofo CONF

jicofo {
  xmpp: {
    client: {
      client-proxy: focus.my.site.com.br
    }
    trusted-domains: [ "recorder.my.site.com.br" ]
  }
  bridge: {
    brewery-jid: "JvbBrewery@internal.auth.my.site.com.br"
  }
  
  jicofo {
  xmpp: {
    client: {
      client-proxy: focus.my.site.com.br
    }
    trusted-domains: [ "recorder.my.site.com.br" ]
  }
  
  jibri: {
    brewery-jid: "JibriBrewery@internal.auth.my.site.com.br"
    pending-timeout: 90 seconds
  }
  authentication: {
    enabled: true
    type: XMPP
    login-url: my.site.com.br
  }
}

@Freddie @saiflakhani

Could you tell me if this is correct?

You have two of those and a duplicated part. You need to have just one.

First of all, Thank you very much for your attention.

I changed it and it still didn’t work, today I did the UPGRADE of the packages and tomorrow I’ll test again to do the configuration following the tutorial.

But I don’t know if it will work, because I think the tutorial must be very outdated

I’m testing a different approach right now using 2 servers.

What DNS entries are needed for Jibri? and Jitsi? because the documentation indicates only 1 type A entry

What about the following entries?

auth.mysite.com
recorder.mysite.com
internal.auth.mysite.com

For jibri to work do I need to set authentication to active?

I wish the room didn’t ask for a password

I am facing the same problem, did you find a solution?
Jitsi is installed with jibri on the same server (20.04)
recording is working with on jibri,
the docker instances not working

any help?