XMPP error condition":"service-unavailable","type":"wait"

After upgrading the jicofo and jvb version from jitsi-4966 to jitsi-6183, I am getting below error

{“error”:{“lang”:“en”,“condition”:“service-unavailable”,“type”:“wait”,“by”:"","$text":{“en”:“Component unavailable”},“text”:“Component unavailable”},“lang":“en”,“id”:“55ab0316-6910-4162-b4ee-d1482e94f4a0”,“to”:"23b358a0-2653-11ec-8f25-51442b71c250@foxden.io/RoaaiskI”,“from”:“focus.foxden.io”,“type”:“error”}

In prosody logs is showing

warn Component not connected, bouncing error for
c2s564ccd13ac90 info Client connected
c2s564ccd13ac90 info Client disconnected: closed

Can somebody please help me.

wow. what a blast from the distant past. Must be at least 2 years old :slight_smile:
From the error message, could come from removal of component connection from Jicofo to Prosody.
In this case your version was too old to be upgraded correctly to proxy. I recently learned that in the stone age of Jitsi even videobridge was connecting to Prosody with a component connection. Now port 5347 (component) is not used anymore.
Maybe better to start from scratch ?

Thanks for your response
JItsi-meet-4966 is released in 25 August 2020

how time flies. I realized that you said you upgraded only jicofo and jvb, so you possibly customized heavily the Javascript. In this case what you need is to adapt your prosody configuration around

Component "focus.yoururl.yourtld" "client_proxy"
    target_address = "focus@auth.yoururl.yourtld"

could be enough, in 2020 jvb was already migrated to c2s connection.

Edit ‘could’ may be optimistic. Changes in Jicofo and Jvb have corresponding changes in Javascript code of course.

In the prosody log below, port 5347 is working fine.

WARNING: Use of prosodyctl start/stop/restart/reload is not recommended
if Prosody is managed by an init system - use that directly instead.
e.g. systemctl start prosody

Authentication is enabled
startup info Hello and welcome to Prosody version 0.11.7
startup info Prosody is using the select backend for connection handling
portmanager info Activated service ‘component’ on [0.0.0.0]:5347

Do you have this in your config?

Jicofo and JVB no longer use the component connection, so port 5347 is not used anywhere from our software.

we are not using “client_proxy” in our jicofo config

Error showing In prosody exporter logs

type: ‘error’,
error: {
alternateLanguageText: [ [Object] ],
condition: ‘service-unavailable’,
text: ‘Component unavailable’,
type: ‘wait’
}
}
bosh latency checks finished. success 5, error: 1

Is this can be related with new authorization methods to work with prosody

Your jicofo config don’t matter. In the jicofo code, before the changes, connection was going through a component connection on port 5347. After the changes, jicofo (tries to) connect as a standard client on port 5222. Nothing you do at the config file level can correct that.

in prosody config, I added

Component "focus.yoururl.yourtld" "client_proxy"
    target_address = "focus@auth.yoururl.yourtld"

and removed

– component_ports = { 5347 }
– component_interface = “0.0.0.0”

butt now I am facing below error

Error initializing module ‘client_proxy’ on ‘auth.yoururl.yourtld’: proxy_component should be loaded as component
stack traceback:
[C]: in function ‘error’
…ib/prosody/modules/mod_client_proxy/mod_client_proxy.lua:2: in main chunk
[C]: in function ‘xpcall’
/opt/prosody/lib/prosody/core/modulemanager.lua:183: in function ‘do_load_module’
/opt/prosody/lib/prosody/core/modulemanager.lua:261: in function ‘load’
/opt/prosody/lib/prosody/core/modulemanager.lua:83: in function ‘?’
/opt/prosody/lib/prosody/util/events.lua:79: in function </opt/prosody/lib/prosody/util/events.lua:75>
(…tail calls…)
/opt/prosody/lib/prosody/core/hostmanager.lua:108: in function ‘activate’
/opt/prosody/lib/prosody/core/hostmanager.lua:58: in function ‘?’
/opt/prosody/lib/prosody/util/events.lua:79: in function </opt/prosody/lib/prosody/util/events.lua:75>
(…tail calls…)
/opt/prosody/lib/prosody/util/startup.lua:393: in function ‘prepare_to_start’
/opt/prosody/lib/prosody/util/startup.lua:629: in function ‘f’

Please help.

Which prosody version is this?

well, 11.7 as he said :slight_smile:

don’t load the module explicitly. It’s enough to copy it in the jitsi-meet/prosody-plugins directory.

I copied mod_client_proxy.lua in “opt/prosody/usr/lib/prosody-modules directory” where all other plugins are available.

Why? You should not do that.

Hi, Thanks for the quick respone :slight_smile:
I’m using a custom client so should I create prosody-plugins directory inside the client root directory and place the “mod_client_proxy.lua” file inside that.
and also one more query, should I also copy “mod_roster_command.lua and mod_roster_command.patch” files.

In my prosody.cfg.lua
plugin_paths = { “/opt/prosody/usr/lib/prosody-modules” }

The above error has been resolved by loaded the client_proxy as a component :slight_smile:
but still not able to start a session getting below error

Error in prosody_jicofo_ping_latency latency check: {
from: ‘focus.foxden.io’,
id: ‘11a55d1c-7acf-4049-9454-0b08ba7c437a’,
lang: ‘’,
to: ‘prosody-prom-exporter@auth.foxden.io/latencysender’,
type: ‘error’,
error: { condition: ‘service-unavailable’, type: ‘cancel’ }
}

Somebody Please help to resolve this issue

a full jicofo log could be informative.

Please find the attached jicofo logs
jicofo.log (6.4 KB)

your jicofo starts, with a http configuration that seems archaic (uncommon ports for example), jvb connects successfully to it and jicofo run some health checks. What is the problem exactly ? I don’t see any attempted user connection or error in this log.