[Solved] Unable to find an available Jibri

It is in the logs The following addresses failed: 'classroom.beeclear.app:5222' failed because: classroom.beeclear.app/127.0.0.1 exception: java.net.ConnectException: Connection refused (Connection refused)
Jibri cannot connect to the xmpp server 127.0.0.1 on port 5222.

Thanks again @damencho I see this but how i can fix this error? Please guide me.

Is jibri and prosody running on same host? If yes check is prosody listening on 127.0.0.1
Can you do telnet localhost 5222?

No, It’s on different servers. One for Jitsi and one for Jibri. I use 2 AWS server Ubuntu 18.04. Port is on from AWS

Hey! @damencho Are you there? I see when I use full domain “vipstream.xyz” without any subdomain then it’s work. But if I use any subdomain then it’s not working. Is there any problem with a subdomain?

Well jibri resolves that and tries to connect to localhost, so either fix that host resolution or set server ip address in jibri config

Thanks, @damencho Let me try this. I will let you know

Hello, @damencho thanks for your help. I see work almost done. But now i see recording failed to start. Can you please check this jibri config is their anything that should change?

{
// NOTE: this is a SAMPLE config file, it will need to be configured with
// values from your environment

// Where recording files should be temporarily stored
"recording_directory":"/srv/recordings",
// The path to the script which will be run on completed recordings
"finalize_recording_script_path": "",
"xmpp_environments": [
    {
        // A friendly name for this environment which can be used
        //  for logging, stats, etc.
        "name": "prod environment",
        // The hosts of the XMPP servers to connect to as part of
        //  this environment
        "xmpp_server_hosts": [
            "52.221.196.85"
        ],
        // The xmpp domain we'll connect to on the XMPP server
        "xmpp_domain": "52.221.196.85",
        // Jibri will login to the xmpp server as a privileged user 
        "control_login": {
            // The domain to use for logging in
            "domain": "auth.classroom.beeclear.app",
            // The credentials for logging in
            "username": "jibri",
            "password": "Jbee#le@"
        },
        // Using the control_login information above, Jibri will join 
        //  a control muc as a means of announcing its availability 
        //  to provide services for a given environment
        "control_muc": {
            "domain": "internal.auth.classroom.beeclear.app",
            "room_name": "JibriBrewery",
            "nickname": "jibri"
        },
        // All participants in a call join a muc so they can exchange
        //  information.  Jibri can be instructed to join a special muc
        //  with credentials to give it special abilities (e.g. not being
        //  displayed to other users like a normal participant)
        "call_login": {
            "domain": "recorder.classroom.beeclear.app",
            "username": "recorder",
            "password": "JbeS@#lear"
        },
        // When jibri gets a request to start a service for a room, the room
        //  jid will look like:
        //  roomName@optional.prefixes.subdomain.xmpp_domain
        // We'll build the url for the call by transforming that into:
        //  https://xmpp_domain/subdomain/roomName
        // So if there are any prefixes in the jid (like jitsi meet, which
        //  has its participants join a muc at conference.xmpp_domain) then
        //  list that prefix here so it can be stripped out to generate
        //  the call url correctly
        "room_jid_domain_string_to_strip_from_start": "conference.",
        // The amount of time, in minutes, a service is allowed to continue.
        //  Once a service has been running for this long, it will be
        //  stopped (cleanly).  A value of 0 means an indefinite amount
        //  of time is allowed
        "usage_timeout": "0"
    }
]

}

Jibri log
2020-05-14 21:58:19.889 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() Connecting to xmpp environment on 52.221.196.85 with config XmppEnvironmentConfig(name=prod environment, xmppServerHosts=[52.221.196.85], xmppDomain=52.221.196.85, controlLogin=XmppCredentials(domain=auth.classroom.beeclear.app, username=jibri, password=Jbee#le@), controlMuc=XmppMuc(domain=internal.auth.classroom.beeclear.app, roomName=JibriBrewery, nickname=jibri), sipControlMuc=null, callLogin=XmppCredentials(domain=recorder.classroom.beeclear.app, username=recorder, password=JbeS@#lear), stripFromRoomDomain=conference., usageTimeoutMins=0, trustAllXmppCerts=true)
2020-05-14 21:58:19.890 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() The trustAllXmppCerts config is enabled for this domain, all XMPP server provided certificates will be accepted
2020-05-14 21:58:19.909 WARNING: [19] org.jitsi.xmpp.mucclient.MucClient.log() Disabling certificate verification!
2020-05-14 21:58:20.014 WARNING: [1] org.glassfish.jersey.internal.inject.Providers.checkProviderRuntime() A provider org.jitsi.jibri.api.http.HttpApi registered in SERVER runtime does not implement any provider interfaces applicable in the SERVER runtime. Due to constraint configuration problems the provider org.jitsi.jibri.api.http.HttpApi will be ignored.
2020-05-14 21:58:20.232 INFO: [19] org.jitsi.xmpp.mucclient.MucClient.log() [MucClient id=52.221.196.85 hostname=52.221.196.85] connected
2020-05-14 21:58:20.327 INFO: [19] org.jitsi.xmpp.mucclient.MucClient.log() Joined MUC: jibribrewery@internal.auth.classroom.beeclear.app
2020-05-14 21:58:39.229 INFO: [35] org.jitsi.jibri.api.xmpp.XmppApi.handleJibriIq() Received JibriIq from environment [MucClient id=52.221.196.85 hostname=52.221.196.85]
2020-05-14 21:58:39.230 INFO: [35] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Received start request
2020-05-14 21:58:39.238 INFO: [35] org.jitsi.jibri.api.xmpp.XmppApi.handleStartJibriIq() Sending ‘pending’ response to start IQ
2020-05-14 21:58:39.238 INFO: [37] org.jitsi.jibri.api.xmpp.XmppApi.run() Starting service
2020-05-14 21:58:39.240 SEVERE: [37] org.jitsi.jibri.api.xmpp.XmppApi.run() Error starting Jibri service : org.jitsi.jibri.util.CallUrlInfoFromJidException: Unable to extract call url info from Jid rakibulinux@conference.classroom.beeclear.app (stripFromRoomDomain = conference., xmppDomain = 52.221.196.85) with stack:
org.jitsi.jibri.util.XmppUtilsKt.getCallUrlInfoFromJid(XmppUtils.kt:47)
org.jitsi.jibri.api.xmpp.XmppApi.handleStartService(XmppApi.kt:271)
org.jitsi.jibri.api.xmpp.XmppApi.access$handleStartService(XmppApi.kt:67)
org.jitsi.jibri.api.xmpp.XmppApi$handleStartJibriIq$1.run(XmppApi.kt:195)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

Jicofo log
stream:error</stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1064)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:1000)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1016)
at java.base/java.lang.Thread.run(Thread.java:834)
Jicofo 2020-05-14 12:18:37.045 SEVERE: [322] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.connectionClosedOnError().543 XMPP connection closed on error: invalid-namespace You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
stream:error</stream:error>
Jicofo 2020-05-14 12:18:37.045 WARNING: [322] org.jitsi.impl.protocol.xmpp.PacketDebugger.log().121 Smack: XMPPConnection closed due to an exception (XMPPTCPConnection[focus@auth.classroom.beeclear.app/focus12856478478] (0))
org.jivesoftware.smack.XMPPException$StreamErrorException: invalid-namespace You can read more about the meaning of this stream error at http://xmpp.org/rfcs/rfc6120.html#streams-error-conditions
stream:error</stream:error>
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.parsePackets(XMPPTCPConnection.java:1064)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader.access$300(XMPPTCPConnection.java:1000)
at org.jivesoftware.smack.tcp.XMPPTCPConnection$PacketReader$1.run(XMPPTCPConnection.java:1016)
at java.base/java.lang.Thread.run(Thread.java:834)
Jicofo 2020-05-14 12:18:38.044 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 9
Jicofo 2020-05-14 12:18:39.045 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 8
Jicofo 2020-05-14 12:18:40.017 SEVERE: [320] org.jitsi.xmpp.component.ComponentBase.log() Ping timeout for ID: mj300-7425
Jicofo 2020-05-14 12:18:40.045 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 7
Jicofo 2020-05-14 12:18:41.046 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 6
Jicofo 2020-05-14 12:18:42.046 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 5
Jicofo 2020-05-14 12:18:43.047 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 4
Jicofo 2020-05-14 12:18:44.047 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 3
Jicofo 2020-05-14 12:18:45.047 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 2
Jicofo 2020-05-14 12:18:46.048 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 1
Jicofo 2020-05-14 12:18:47.048 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 0
Jicofo 2020-05-14 12:18:47.048 INFO: [318] org.jitsi.impl.protocol.xmpp.XmppProtocolProvider.reconnectingIn().586 XMPP reconnecting in: 0
Jicofo 2020-05-14 12:18:47.180 INFO: [318] org.jitsi.jicofo.ProtocolProviderHandler.registrationStateChanged().144 XmppProtocolProvider(focus@auth.classroom.beeclear.app/focus12856478478 (Jabber)): RegistrationStateChangeEvent[ oldState=Unregistered; newState=RegistrationState=Registered; reasonCode=-1; reason=null]
Jicofo 2020-05-14 12:18:47.187 INFO: [318] org.jitsi.jicofo.xmpp.BaseBrewery.start().187 Joined brewery room: JibriBrewery@internal.auth.classroom.beeclear.app
Jicofo 2020-05-14 12:18:47.195 INFO: [318] org.jitsi.jicofo.xmpp.BaseBrewery.start().187 Joined brewery room: JvbBrewery@internal.auth.classroom.beeclear.app
Jicofo 2020-05-14 12:18:47.195 INFO: [30] org.jitsi.jicofo.xmpp.BaseBrewery.processInstanceStatusChanged().330 Added brewery instance: jvbbrewery@internal.auth.classroom.beeclear.app/592be39f-b18c-482f-831d-43d563b4073c
Jicofo 2020-05-14 12:18:47.196 WARNING: [30] org.jitsi.jicofo.bridge.BridgeSelector.log() No pub-sub node mapped for jvbbrewery@internal.auth.classroom.beeclear.app/592be39f-b18c-482f-831d-43d563b4073c
Jicofo 2020-05-14 12:18:47.196 INFO: [30] org.jitsi.jicofo.bridge.BridgeSelector.log() Added new videobridge: Bridge[jid=jvbbrewery@internal.auth.classroom.beeclear.app/592be39f-b18c-482f-831d-43d563b4073c, relayId=null, region=null, stress=0.00]
Jicofo 2020-05-14 12:18:47.197 INFO: [43] org.jitsi.jicofo.bridge.JvbDoctor.log() Scheduled health-check task for: jvbbrewery@internal.auth.classroom.beeclear.app/592be39f-b18c-482f-831d-43d563b4073c
Jicofo 2020-05-14 12:18:47.200 INFO: [318] org.jitsi.jicofo.ComponentsDiscovery.log() New component discovered: recorder.classroom.beeclear.app, Prosody(0.10.0,Linux)
Jicofo 2020-05-14 12:18:47.201 INFO: [318] org.jitsi.jicofo.ComponentsDiscovery.log() New component discovered: conference.classroom.beeclear.app, null
Jicofo 2020-05-14 12:18:47.201 INFO: [318] org.jitsi.jicofo.JitsiMeetServices.log() MUC component discovered: conference.classroom.beeclear.app
Jicofo 2020-05-14 12:18:47.202 SEVERE: [318] org.jitsi.impl.protocol.xmpp.OpSetSimpleCapsImpl.getFeatures().144 Failed to discover features for conferenceduration.classroom.beeclear.app: XMPP error reply received from conferenceduration.classroom.beeclear.app: XMPPError: service-unavailable - cancel
Jicofo 2020-05-14 12:18:47.204 INFO: [318] org.jitsi.jicofo.ComponentsDiscovery.log() New component discovered: focus.classroom.beeclear.app, null
Jicofo 2020-05-14 12:18:47.205 SEVERE: [318] org.jitsi.impl.protocol.xmpp.OpSetSimpleCapsImpl.getFeatures().144 Failed to discover features for speakerstats.classroom.beeclear.app: XMPP error reply received from speakerstats.classroom.beeclear.app: XMPPError: service-unavailable - cancel
Jicofo 2020-05-14 12:18:47.206 INFO: [318] org.jitsi.jicofo.ComponentsDiscovery.log() New component discovered: auth.classroom.beeclear.app, Prosody(0.10.0,Linux)
Jicofo 2020-05-14 12:18:47.206 INFO: [318] org.jitsi.jicofo.JitsiMeetServices.log() Detected XMPP server version: Prosody(0.10.0,Linux)
Jicofo 2020-05-14 12:18:47.206 INFO: [318] org.jitsi.jicofo.ComponentsDiscovery.log() Service rediscovery disabled
Jicofo 2020-05-14 12:18:47.206 INFO: [318] org.jitsi.jicofo.FocusManager.log() XMPP provider reg state: RegistrationState=Registered
Jicofo 2020-05-14 21:58:20.333 INFO: [30] org.jitsi.jicofo.xmpp.BaseBrewery.processInstanceStatusChanged().330 Added brewery instance: jibribrewery@internal.auth.classroom.beeclear.app/jibri
Jicofo 2020-05-14 21:58:20.336 INFO: [30] org.jitsi.jicofo.recording.jibri.JibriDetector.onInstanceStatusChanged().137 Received Jibri jibribrewery@internal.auth.classroom.beeclear.app/jibri status
Jicofo 2020-05-14 21:58:20.338 INFO: [30] org.jitsi.jicofo.recording.jibri.JibriDetector.notifyJibriStatus().175 Jibri: jibribrewery@internal.auth.classroom.beeclear.app/jibri available: true
Jicofo 2020-05-14 21:58:26.562 INFO: [332] org.jitsi.jicofo.xmpp.FocusComponent.handleConferenceIq().401 Focus request for room: rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:26.562 INFO: [332] org.jitsi.jicofo.FocusManager.log() Created new focus for rakibulinux@conference.classroom.beeclear.app@auth.classroom.beeclear.app. Conference count 1,options:
Jicofo 2020-05-14 21:58:26.563 INFO: [332] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Joining the room: rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:26.737 INFO: [30] org.jitsi.jicofo.ChatRoomRoleAndPresence.log() Chat room event ChatRoomMemberPresenceChangeEvent[type=MemberJoined sourceRoom=org.jitsi.impl.protocol.xmpp.ChatRoomImpl@531e82f member=ChatMember[rakibulinux@conference.classroom.beeclear.app/b39e0aee, jid: null]@1069859054]
Jicofo 2020-05-14 21:58:26.739 INFO: [30] org.jitsi.jicofo.ChatRoomRoleAndPresence.log() Granted owner to rakibulinux@conference.classroom.beeclear.app/b39e0aee
Jicofo 2020-05-14 21:58:26.739 INFO: [30] org.jitsi.jicofo.JitsiMeetConferenceImpl.log() Member rakibulinux@conference.classroom.beeclear.app/b39e0aee joined.
Jicofo 2020-05-14 21:58:39.226 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Starting session with Jibri jibribrewery@internal.auth.classroom.beeclear.app/jibri
Jicofo 2020-05-14 21:58:39.226 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Starting Jibri jibribrewery@internal.auth.classroom.beeclear.app/jibri for stream ID: null in room: rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:39.241 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Updating status from JIBRI: for rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:39.242 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Got Jibri status update: Jibri jibribrewery@internal.auth.classroom.beeclear.app/jibri has status pending and failure reason null, current Jibri jid is jibribrewery@internal.auth.classroom.beeclear.app/jibri
Jicofo 2020-05-14 21:58:39.242 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Started Jibri session
Jicofo 2020-05-14 21:58:39.243 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Updating status from JIBRI: for rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:39.243 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Got Jibri status update: Jibri jibribrewery@internal.auth.classroom.beeclear.app/jibri has status off and failure reason error, current Jibri jid is jibribrewery@internal.auth.classroom.beeclear.app/jibri
Jicofo 2020-05-14 21:58:39.243 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Jibri is no longer pending, cancelling pending timeout task
Jicofo 2020-05-14 21:58:39.243 WARNING: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() failureReason was non-null but shouldRetry wasn’t set, will NOT retry
Jicofo 2020-05-14 21:58:39.243 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Jibri failed and signaled that we should not retry the same request
Jicofo 2020-05-14 21:58:39.243 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Got jibri status off and failure error
Jicofo 2020-05-14 21:58:39.244 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Publishing new jibri-recording-status: in: rakibulinux@conference.classroom.beeclear.app
Jicofo 2020-05-14 21:58:39.245 INFO: [342] org.jitsi.jicofo.recording.jibri.JibriSession.log() Cleaning up current JibriSession

Hey! @damencho, If configuration like that then i got this error:

{
// NOTE: this is a SAMPLE config file, it will need to be configured with
// values from your environment

// Where recording files should be temporarily stored
"recording_directory":"/srv/recordings",
// The path to the script which will be run on completed recordings
"finalize_recording_script_path": "",
"xmpp_environments": [
    {
        // A friendly name for this environment which can be used
        //  for logging, stats, etc.
        "name": "prod environment",
        // The hosts of the XMPP servers to connect to as part of
        //  this environment
        "xmpp_server_hosts": [
            "52.221.196.85"
        ],
        // The xmpp domain we'll connect to on the XMPP server
        "xmpp_domain": "classroom.beeclear.app",
        // Jibri will login to the xmpp server as a privileged user 
        "control_login": {
            // The domain to use for logging in
            "domain": "auth.classroom.beeclear.app",
            // The credentials for logging in
            "username": "jibri",
            "password": "Jbee#le@"
        },
        // Using the control_login information above, Jibri will join 
        //  a control muc as a means of announcing its availability 
        //  to provide services for a given environment
        "control_muc": {
            "domain": "internal.auth.classroom.beeclear.app",
            "room_name": "JibriBrewery",
            "nickname": "jibri2"
        },
        // All participants in a call join a muc so they can exchange
        //  information.  Jibri can be instructed to join a special muc
        //  with credentials to give it special abilities (e.g. not being
        //  displayed to other users like a normal participant)
        "call_login": {
            "domain": "recorder.classroom.beeclear.app",
            "username": "recorder",
            "password": "JbeS@#lear"
        },
        // When jibri gets a request to start a service for a room, the room
        //  jid will look like:
        //  roomName@optional.prefixes.subdomain.xmpp_domain
        // We'll build the url for the call by transforming that into:
        //  https://xmpp_domain/subdomain/roomName
        // So if there are any prefixes in the jid (like jitsi meet, which
        //  has its participants join a muc at conference.xmpp_domain) then
        //  list that prefix here so it can be stripped out to generate
        //  the call url correctly
        "room_jid_domain_string_to_strip_from_start": "conference.",
        // The amount of time, in minutes, a service is allowed to continue.
        //  Once a service has been running for this long, it will be
        //  stopped (cleanly).  A value of 0 means an indefinite amount
        //  of time is allowed
        "usage_timeout": "0"
    }
]

}

2020-05-14 22:14:46.363 FINE: [38] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: start:recording
2020-05-14 22:14:46.363 INFO: [38] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: IDLE -> BUSY
2020-05-14 22:14:46.363 INFO: [38] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=BUSY, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-05-14 22:14:46.364 INFO: [38] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@7de1e938
2020-05-14 22:14:46.483 SEVERE: [47] org.jitsi.jibri.selenium.JibriSelenium.run() An error occurred while joining the call: org.openqa.selenium.WebDriverException: : Failed to read the ‘localStorage’ property from ‘Window’: Access is denied for this document.
(Session info: chrome=81.0.4044.138)
(Driver info: chromedriver=81.0.4044.138 (8c6c7ba89cc9453625af54f11fd83179e23450fa-refs/branch-heads/4044@{#999}),platform=Linux 4.15.0-99-generic x86_64) (WARNING: The server did not provide any stacktrace information)
Command duration or timeout: 0 milliseconds
Build info: version: ‘unknown’, revision: ‘unknown’, time: ‘unknown’
System info: host: ‘classroom.beeclear.app’, ip: ‘127.0.0.1’, os.name: ‘Linux’, os.arch: ‘amd64’, os.version: ‘4.15.0-99-generic’, java.version: ‘1.8.0_252’
Driver info: org.openqa.selenium.chrome.ChromeDriver
Capabilities {acceptInsecureCerts: false, acceptSslCerts: false, applicationCacheEnabled: false, browserConnectionEnabled: false, browserName: chrome, chrome: {chromedriverVersion: 81.0.4044.138 (8c6c7ba89cc9…, userDataDir: /tmp/.com.google.Chrome.x5rQxG}, cssSelectorsEnabled: true, databaseEnabled: false, goog:chromeOptions: {debuggerAddress: localhost:33921}, handlesAlerts: true, hasTouchScreen: false, javascriptEnabled: true, locationContextEnabled: true, mobileEmulationEnabled: false, nativeEvents: true, networkConnectionEnabled: false, pageLoadStrategy: normal, platform: LINUX, platformName: LINUX, proxy: Proxy(), rotatable: false, setWindowRect: true, strictFileInteractability: false, takesHeapSnapshot: true, takesScreenshot: true, timeouts: {implicit: 0, pageLoad: 300000, script: 30000}, unexpectedAlertBehaviour: ignore, unhandledPromptBehavior: ignore, version: 81.0.4044.138, webStorageEnabled: true, webauthn:virtualAuthenticators: true}
Session ID: 318009bd3af4f18f5d376939616d2fbe with stack:
sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:62)
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
java.lang.reflect.Constructor.newInstance(Constructor.java:423)
org.openqa.selenium.remote.ErrorHandler.createThrowable(ErrorHandler.java:214)
org.openqa.selenium.remote.ErrorHandler.throwIfResponseFailed(ErrorHandler.java:166)
org.openqa.selenium.remote.http.JsonHttpResponseCodec.reconstructValue(JsonHttpResponseCodec.java:40)
org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:80)
org.openqa.selenium.remote.http.AbstractHttpResponseCodec.decode(AbstractHttpResponseCodec.java:44)
org.openqa.selenium.remote.HttpCommandExecutor.execute(HttpCommandExecutor.java:158)
org.openqa.selenium.remote.service.DriverCommandExecutor.execute(DriverCommandExecutor.java:83)
org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:543)
org.openqa.selenium.remote.RemoteWebDriver.executeScript(RemoteWebDriver.java:480)
org.jitsi.jibri.selenium.JibriSelenium.setLocalStorageValues(JibriSelenium.kt:175)
org.jitsi.jibri.selenium.JibriSelenium.access$setLocalStorageValues(JibriSelenium.kt:112)
org.jitsi.jibri.selenium.JibriSelenium$joinCall$1.run(JibriSelenium.kt:255)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

2020-05-14 22:14:46.484 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange() Transitioning from state Starting up to Error: SESSION Failed to join call
2020-05-14 22:14:46.484 INFO: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.onServiceStateChange() File recording service transitioning from state Starting up to Error: SESSION Failed to join call
2020-05-14 22:14:46.484 INFO: [47] org.jitsi.jibri.api.xmpp.XmppApi.invoke() Current service had an error, sending error iq
2020-05-14 22:14:46.484 FINE: [47] org.jitsi.jibri.statsd.JibriStatsDClient.incrementCounter() Incrementing statsd counter: stop:recording
2020-05-14 22:14:46.485 INFO: [47] org.jitsi.jibri.JibriManager.stopService() Stopping the current service
2020-05-14 22:14:46.485 INFO: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Stopping capturer
2020-05-14 22:14:46.485 INFO: [47] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() Stopping ffmpeg process
2020-05-14 22:14:46.485 INFO: [47] org.jitsi.jibri.util.JibriSubprocess.ffmpeg.stop() ffmpeg exited with value null
2020-05-14 22:14:46.485 INFO: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Quitting selenium
2020-05-14 22:14:46.493 INFO: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Participants in this recording:
2020-05-14 22:14:46.505 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type browser
2020-05-14 22:14:46.512 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 114 log entries for type driver
2020-05-14 22:14:46.533 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Got 0 log entries for type client
2020-05-14 22:14:46.533 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Leaving web call
2020-05-14 22:14:46.549 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Quitting chrome driver
2020-05-14 22:14:46.617 INFO: [47] org.jitsi.jibri.selenium.JibriSelenium.leaveCallAndQuitBrowser() Chrome driver quit
2020-05-14 22:14:46.617 INFO: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.stop() Finalizing the recording
2020-05-14 22:14:46.618 SEVERE: [47] org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize() Failed to run finalize script: java.io.IOException: Cannot run program “”: error=2, No such file or directory with stack:
java.lang.ProcessBuilder.start(ProcessBuilder.java:1048)
org.jitsi.jibri.util.ProcessWrapper.start(ProcessWrapper.kt:87)
org.jitsi.jibri.service.impl.FileRecordingJibriService.finalize(FileRecordingJibriService.kt:205)
org.jitsi.jibri.service.impl.FileRecordingJibriService.stop(FileRecordingJibriService.kt:190)
org.jitsi.jibri.JibriManager.stopService(JibriManager.kt:254)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:205)
org.jitsi.jibri.JibriManager$startService$1.invoke(JibriManager.kt:84)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:191)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:182)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.service.impl.StatefulJibriService.onServiceStateChange(StatefulJibriService.kt:40)
org.jitsi.jibri.service.impl.StatefulJibriService.access$onServiceStateChange(StatefulJibriService.kt:26)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:35)
org.jitsi.jibri.service.impl.StatefulJibriService$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.service.JibriServiceStateMachine.access$notify(JibriServiceStateMachine.kt:46)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:100)
org.jitsi.jibri.service.JibriServiceStateMachine$stateMachine$1$5.invoke(JibriServiceStateMachine.kt:46)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.service.JibriServiceStateMachine.transition(JibriServiceStateMachine.kt:112)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:46)
org.jitsi.jibri.service.impl.StatefulJibriService$registerSubComponent$1.invoke(StatefulJibriService.kt:26)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:37)
org.jitsi.jibri.util.StatusPublisher$addStatusHandler$1.invoke(StatusPublisher.kt:29)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:53)
org.jitsi.jibri.util.StatusPublisher$publishStatus$1.invoke(StatusPublisher.kt:29)
kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt(MutableCollections.kt:191)
kotlin.collections.CollectionsKt__MutableCollectionsKt.retainAll(MutableCollections.kt:182)
org.jitsi.jibri.util.StatusPublisher.publishStatus(StatusPublisher.kt:53)
org.jitsi.jibri.selenium.JibriSelenium.onSeleniumStateChange(JibriSelenium.kt:181)
org.jitsi.jibri.selenium.JibriSelenium.access$onSeleniumStateChange(JibriSelenium.kt:112)
org.jitsi.jibri.selenium.JibriSelenium$1.invoke(JibriSelenium.kt:166)
org.jitsi.jibri.selenium.JibriSelenium$1.invoke(JibriSelenium.kt:112)
org.jitsi.jibri.util.NotifyingStateMachine.notify(NotifyingStateMachine.kt:26)
org.jitsi.jibri.selenium.SeleniumStateMachine.access$notify(SeleniumStateMachine.kt:34)
org.jitsi.jibri.selenium.SeleniumStateMachine$stateMachine$1$5.invoke(SeleniumStateMachine.kt:79)
org.jitsi.jibri.selenium.SeleniumStateMachine$stateMachine$1$5.invoke(SeleniumStateMachine.kt:34)
com.tinder.StateMachine.notifyOnTransition(StateMachine.kt:65)
com.tinder.StateMachine.transition(StateMachine.kt:23)
org.jitsi.jibri.selenium.SeleniumStateMachine.transition(SeleniumStateMachine.kt:84)
org.jitsi.jibri.selenium.JibriSelenium$joinCall$1.run(JibriSelenium.kt:266)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

2020-05-14 22:14:46.618 INFO: [47] org.jitsi.jibri.status.JibriStatusManager.log() Busy status has changed: BUSY -> IDLE
2020-05-14 22:14:46.618 INFO: [47] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, details={})), publishing presence to connections
2020-05-14 22:14:46.618 INFO: [47] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@71cfa284

Leave this the way it was.

Hi damencho,
Facing the same issue of recording :slight_smile:
Below is the jibri log


2020-05-19 16:28:21.428 INFO: [1] org.jitsi.jibri.Main.main() Jibri run with args [–config, /etc/jitsi/jibri/config.json]
2020-05-19 16:28:21.431 INFO: [1] org.jitsi.jibri.Main.main() Using config file /etc/jitsi/jibri/config.json
2020-05-19 16:28:21.431 INFO: [1] org.jitsi.jibri.Main.main() Using port 3333 for internal HTTP API
2020-05-19 16:28:21.431 INFO: [1] org.jitsi.jibri.Main.main() Using port 2222 for the HTTP API
2020-05-19 16:28:21.883 INFO: [1] org.jitsi.jibri.Main.loadConfig() Parsed config:
JibriConfig(recordingDirectory=/recordings, singleUseMode=false, enabledStatsD=true, finalizeRecordingScriptPath=, xmppEnvironments=[XmppEnvironmentConfig(name=prod environment, xmppServer$
2020-05-19 16:28:22.281 WARNING: [1] org.glassfish.jersey.internal.inject.Providers.checkProviderRuntime() A provider org.jitsi.jibri.api.http.internal.InternalHttpApi registered in SERVER$
2020-05-19 16:28:22.443 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.updatePresence() Jibri reports its status is now JibriStatus(busyStatus=IDLE, health=OverallHealth(healthStatus=HEALTHY, 2020-05-19 16:28:22.445 INFO: [1] org.jitsi.xmpp.mucclient.MucClientManager.log() Setting a presence extension: org.jitsi.xmpp.extensions.jibri.JibriStatusPacketExt@5aa6202e 2020-05-19 16:28:22.450 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() Connecting to xmpp environment on meet.kestoneglobal.com with config XmppEnvironmentConfig(name=prod environment,
2020-05-19 16:28:22.450 INFO: [1] org.jitsi.jibri.api.xmpp.XmppApi.start() The trustAllXmppCerts config is enabled for this domain, all XMPP server provided certificates will be accepted
2020-05-19 16:28:22.462 WARNING: [21] org.jitsi.xmpp.mucclient.MucClient.log() Disabling certificate verification!
2020-05-19 16:28:22.489 WARNING: [1] org.glassfish.jersey.internal.inject.Providers.checkProviderRuntime() A provider org.jitsi.jibri.api.http.HttpApi registered in SERVER runtime does not$
2020-05-19 16:28:52.467 WARNING: [30] org.jivesoftware.smackx.ping.PingManager.pingServerIfNecessary() XMPPConnection was not authenticated
2020-05-19 16:28:52.869 SEVERE: [21] org.jitsi.xmpp.mucclient.MucClientManager.log() Failed to initialize and start a MucClient:
org.jivesoftware.smack.SmackException$ConnectionException: The following addresses failed: ‘meet.kestoneglobal.com:5222’ failed because: meet.kestoneglobal.com/3.6.69.46 exception: java.ne$
at org.jivesoftware.smack.SmackException$ConnectionException.from(SmackException.java:278)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectUsingConfiguration(XMPPTCPConnection.java:619)
at org.jivesoftware.smack.tcp.XMPPTCPConnection.connectInternal(XMPPTCPConnection.java:902)
at org.jivesoftware.smack.AbstractXMPPConnection.connect(AbstractXMPPConnection.java:383)
at org.jitsi.xmpp.mucclient.MucClient.initializeConnectAndJoin(MucClient.java:277)
at org.jitsi.xmpp.mucclient.MucClientManager.lambda$addMucClient$0(MucClientManager.java:152)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
2020-05-19 16:36:29.924 INFO: [20] org.jitsi.jibri.api.http.internal.InternalHttpApi.gracefulShutdown() Jibri gracefully shutting down

Jibri Configuration

{
// NOTE: this is a SAMPLE config file, it will need to be configured with
// values from your environment

// Where recording files should be temporarily stored
"recording_directory":"/recordings",
// The path to the script which will be run on completed recordings
"finalize_recording_script_path": "",
"xmpp_environments": [
    {
        // A friendly name for this environment which can be used
        //  for logging, stats, etc.
        "name": "prod environment",
        // The hosts of the XMPP servers to connect to as part of
        //  this environment
        "xmpp_server_hosts": [
            "3.6.69.46"
        ],
        // The xmpp domain we'll connect to on the XMPP server
        "xmpp_domain": "meet.kestoneglobal.com",
        // Jibri will login to the xmpp server as a privileged user
        "control_login": {
            // The domain to use for logging in
            "domain": "auth.meet.kestoneglobal.com",
            // The credentials for logging in
            "username": "jibri",
            "password": "jibripassKIMS"
        },
        // Using the control_login information above, Jibri will join
        //  a control muc as a means of announcing its availability
        //  to provide services for a given environment
        "control_muc": {
            "domain": "internal.auth.meet.kestoneglobal.com",
            "room_name": "JibriBrewery",
            "nickname": "jibri"
        },
        // All participants in a call join a muc so they can exchange
        //  information.  Jibri can be instructed to join a special muc
        //  with credentials to give it special abilities (e.g. not being
        //  displayed to other users like a normal participant)
        "call_login": {
            "domain": "recorder.meet.kestoneglobal.com",
            "username": "recorder",
            "password": "recorderpassKIMS"
        },

I am using the same server as for recording and it is on AWS

Hello, @damencho I got a new problem. Can you please told me how I can fix it?

Jicofo Log

Jicofo 2020-05-20 01:48:14.443 INFO: [33] org.jitsi.jicofo.recording.jibri.JibriDetector.onInstanceStatusChanged().137 Received Jibri jibribrewery@internal.auth.host.izyvid.com/jibri1 status
Jicofo 2020-05-20 01:48:14.443 INFO: [33] org.jitsi.jicofo.recording.jibri.JibriDetector.notifyJibriStatus().175 Jibri: jibribrewery@internal.auth.host.izyvid.com/jibri1 available: true
Jicofo 2020-05-20 01:48:22.624 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Starting session with Jibri jibribrewery@internal.auth.host.izyvid.com/jibri1
Jicofo 2020-05-20 01:48:22.624 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Starting Jibri jibribrewery@internal.auth.host.izyvid.com/jibri1 for stream ID: null in room: rakibulinux@conference.host.izyvid.com
Jicofo 2020-05-20 01:48:22.638 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Updating status from JIBRI: for rakibulinux@conference.host.izyvid.com
Jicofo 2020-05-20 01:48:22.638 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Got Jibri status update: Jibri jibribrewery@internal.auth.host.izyvid.com/jibri1 has status pending and failure reason null, current Jibri jid is jibribrewery@internal.auth.host.izyvid.com/jibri1
Jicofo 2020-05-20 01:48:22.638 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Started Jibri session
Jicofo 2020-05-20 01:48:23.207 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Updating status from JIBRI: for rakibulinux@conference.host.izyvid.com
Jicofo 2020-05-20 01:48:23.207 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Got Jibri status update: Jibri jibribrewery@internal.auth.host.izyvid.com/jibri1 has status off and failure reason error, current Jibri jid is jibribrewery@internal.auth.host.izyvid.com/jibri1
Jicofo 2020-05-20 01:48:23.208 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Jibri is no longer pending, cancelling pending timeout task
Jicofo 2020-05-20 01:48:23.208 WARNING: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() failureReason was non-null but shouldRetry wasn’t set, will NOT retry
Jicofo 2020-05-20 01:48:23.208 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Jibri failed and signaled that we should not retry the same request
Jicofo 2020-05-20 01:48:23.208 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Got jibri status off and failure error
Jicofo 2020-05-20 01:48:23.209 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriRecorder.log() Publishing new jibri-recording-status: in: rakibulinux@conference.host.izyvid.com
Jicofo 2020-05-20 01:48:23.209 INFO: [34] org.jitsi.jicofo.recording.jibri.JibriSession.log() Cleaning up current JibriSession

Jibri Log

org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:181)
org.openqa.selenium.chrome.ChromeDriver.(ChromeDriver.java:168)
org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:156)
org.jitsi.jibri.selenium.JibriSelenium.(JibriSelenium.kt:113)
org.jitsi.jibri.service.impl.FileRecordingJibriService.(FileRecordingJibriService.kt:105)
org.jitsi.jibri.JibriManager.startFileRecording(JibriManager.kt:134)
org.jitsi.jibri.api.xmpp.XmppApi.handleStartService(XmppApi.kt:285)
org.jitsi.jibri.api.xmpp.XmppApi.access$handleStartService(XmppApi.kt:67)
org.jitsi.jibri.api.xmpp.XmppApi$handleStartJibriIq$1.run(XmppApi.kt:195)
java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
java.util.concurrent.FutureTask.run(FutureTask.java:266)
java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
java.lang.Thread.run(Thread.java:748)

Jibri conf

{
// NOTE: this is a SAMPLE config file, it will need to be configured with
// values from your environment

// Where recording files should be temporarily stored
"recording_directory":"/home/recordings",
// The path to the script which will be run on completed recordings
"finalize_recording_script_path": "/srv/finalize_recording.sh", //"/path/to/finalize_recording.sh",
"xmpp_environments": [
    {
        // A friendly name for this environment which can be used
        //  for logging, stats, etc.
        "name": "prod environment",
        // The hosts of the XMPP servers to connect to as part of
        //  this environment
        "xmpp_server_hosts": [
            "host.example.com"
        ],
        // The xmpp domain we'll connect to on the XMPP server
        "xmpp_domain": "host.example.com",
        // Jibri will login to the xmpp server as a privileged user 
        "control_login": {
            // The domain to use for logging in
            "domain": "auth.host.example.com",
            // The credentials for logging in
            "username": "jibri",
            "password": "Jibr1P@ssw0rd"
        },
        // Using the control_login information above, Jibri will join 
        //  a control muc as a means of announcing its availability 
        //  to provide services for a given environment
        "control_muc": {
            "domain": "internal.auth.host.example.com",
            "room_name": "JibriBrewery",
            "nickname": "jibri1"
        },
        // All participants in a call join a muc so they can exchange
        //  information.  Jibri can be instructed to join a special muc
        //  with credentials to give it special abilities (e.g. not being
        //  displayed to other users like a normal participant)
        "call_login": {
            "domain": "recorder.host.example.com",
            "username": "recorder",
            "password": "Rec0rderP@ssw0rd"
        },
        // When jibri gets a request to start a service for a room, the room
        //  jid will look like:
        //  roomName@optional.prefixes.subdomain.xmpp_domain
        // We'll build the url for the call by transforming that into:
        //  https://xmpp_domain/subdomain/roomName
        // So if there are any prefixes in the jid (like jitsi meet, which
        //  has its participants join a muc at conference.xmpp_domain) then
        //  list that prefix here so it can be stripped out to generate
        //  the call url correctly
        "room_jid_domain_string_to_strip_from_start": "conference.",
        // The amount of time, in minutes, a service is allowed to continue.
        //  Once a service has been running for this long, it will be
        //  stopped (cleanly).  A value of 0 means an indefinite amount
        //  of time is allowed
        "usage_timeout": "0"
    }
]

}

@ravee.matharu have you got success?

No Rakibul

I can fix your problem. Can you show me errors?

resolve your issues of Jibri with ubuntu 16 preferably without gui.

sure sharing the details