Pade upgraded from 1.7.2 to 1.7.3: Unable to start 2 person meeting

We’ve been happily using and upgrading both Openfire and Pade and find the meetings to be perfect!

Except until last week :sob:

We updated Openfire 4.7.3 to 4.7.4 and Pade 1.7.2 to 1.7.3 and found that 2 person meetings (from the same computer) failed with both users disconnected without explanation. We reverted to the previous versions of both Openfire and Pade and confirmed that out meetings worked flawlessly, as before.

We then updated Pade ONLY and the problem returned. The first guest initiates the meeting (exactly as in the past) and becomes the moderator. When the second guest (from an incognito tab) attempts to join the meeting, BOTH guests are disconnected with the dreaded ‘something went wrong’ message.

The openfire log contains nothing meaningful. There are lots of INFO and a couple of WARNing messages. The only ERROR messages are:
ERROR [pool-monitoring3]: org.jivesoftware.util.XMLProperties - Unable to save XML properties; no file specified
and the timing seems to have nothing to do with the meeting failure(s)

I can provide a full log for the time surrounding the error if this helps.

Our installation is quite boring, except that we have the LOBBY enabled.

I would be very grateful for any direction.

Thanks in advance

Enable debug/trace logging, restart server and look at your log file

The “unable to save XML properties” error is unrelated. This is a known issue with the latest version of the monitoring plugin. It has been registered under tracker Periodic "org.jivesoftware.util.XMLProperties - Unable to save XML properties" errors · Issue #242 · igniterealtime/openfire-monitoring-plugin · GitHub

We’re now wondering if Pade 1.7.3 may have introduced something related to Room Affiliation and Ownership … and here’s why:

  • we’ve updated Fedora and completely reinstalled Openfire 4.7.4 and Openfire-Pade 1.7.3
  • we’ve configured Pade so that anyone can create a room and others can join (we use this for adhoc meetings for staff and clients and it works wonderfully … thank you again)
  • we’ve found that the first person creating the meeting room, works exactly as we’re expecting and as we’ve experience in the past; however when a second person joins the meeting BOTH are disconnected with a vague ‘something happened’ message and then this process repeats as both users attempt to reconnect.
  • we’ve been looking through the logs in search of an error message that might give direction, and we can’t see anything suggesting an ERROR

But we do see this:

2022.12.05 08:50:00 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 2n9b28k8s6@localmeet2.aimlocal.ca
2022.12.05 08:50:00 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
This is the expected behavior and the same message that we’ve seen in the past when a new room is created

2022.12.05 08:50:58 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 5s8xwd05nk@localmeet2.aimlocal.ca
2022.12.05 08:50:58 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.05 08:50:59 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom
This is NOT expected. Both users are kicked out and receive the dreaded ‘Unfortunately something went wrong. trying to reconnect …’ message
We are expecting that the second (and subsequent) users join a room that is already owned … by the first person in

2022.12.05 08:51:26 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 4v79gsa1a7@localmeet2.aimlocal.ca
2022.12.05 08:51:26 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.05 08:51:27 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 39p0cj4k7r@localmeet2.aimlocal.ca
2022.12.05 08:51:27 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.05 08:51:27 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom
2022.12.05 08:51:32 WARN [httpbind-worker-2]: org.jivesoftware.openfire.websocket.XmppWebSocket - Failed to deliver packet; socket is closed:

And the cycle repeats …

2022.12.05 08:51:50 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 8aobyobfo9@localmeet2.aimlocal.ca
2022.12.05 08:51:50 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.05 08:51:56 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 4lqm7dz1bp@localmeet2.aimlocal.ca
2022.12.05 08:51:56 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.05 08:51:57 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom
2022.12.05 08:52:01 WARN [httpbind-worker-4]: org.jivesoftware.openfire.websocket.XmppWebSocket - Failed to deliver packet; socket is closed:
And the cycle repeats …

We kind of assuming that something has changed and we need to re-configure to prevent the second user from trying to take ownership. But we don’t know what we’re looking for; and frankly we’re just guessing.

Can you provide some direction?

Thanks in advance.

I now able to replicate this issue. It seems to be caused by jitsi focus user disconnecting from openfire. Solution is to downgrade to previous jitsi code in version 1.7.3 or wait for 1.7.4 with latest jitsi code.

Thank you for the quick response Dele.

We’ll wait for 1.7.4 as 1.7.2 is working quite nicely for us.

You try the latest 1.7.4 nighty build to see if it fixes it for you. I have run it for over 24 hours and focus user has not dropped yet.

Hi Dele;

I removed 1.7.3 and installed the nightly build of 1.7.4 as pade-beta-1.7.4. My problem is continuing but at least there is an error message to review. As soon as the second user joins, both users are disconnected repeatedly. Here is what I’m seeing:

2022.12.13 09:05:41 ERROR [Jetty-QTP-AdminConsole-162]: org.jivesoftware.util.LocaleUtils - Can’t find bundle for base name pade-beta-1_7_4_i18n, locale en
java.util.MissingResourceException: Can’t find bundle for base name pade-beta-1_7_4_i18n, locale en
** at java.util.ResourceBundle.throwMissingResourceException(ResourceBundle.java:2055) ~[?:?]**
** at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1689) ~[?:?]**
** at java.util.ResourceBundle.getBundleImpl(ResourceBundle.java:1593) ~[?:?]**
** at java.util.ResourceBundle.getBundle(ResourceBundle.java:1284) ~[?:?]**
** at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:522) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:473) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.util.LocaleUtils.getLocalizedString(LocaleUtils.java:457) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.admin.AdminConsole.getAdminText(AdminConsole.java:218) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.admin.TabsTag.doEndTag(TabsTag.java:184) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.openfire.admin.decorators.main_jsp._jspx_meth_admin_005ftabs_005f0(main_jsp.java:678) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.jivesoftware.openfire.admin.decorators.main_jsp._jspService(main_jsp.java:305) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.apache.jasper.runtime.HttpJspBase.service(HttpJspBase.java:71) ~[apache-jsp-8.5.54.jar:8.5.54]**
** at javax.servlet.http.HttpServlet.service(HttpServlet.java:790) ~[javax.servlet-api-3.1.0.jar:3.1.0]**
** at org.eclipse.jetty.servlet.ServletHolder$NotAsync.service(ServletHolder.java:1459) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:799) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$ChainEnd.doFilter(ServletHandler.java:1626) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:620) ~[jetty-security-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.Dispatcher.include(Dispatcher.java:128) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at com.opensymphony.sitemesh.compatability.OldDecorator2NewDecorator.render(OldDecorator2NewDecorator.java:46) ~[sitemesh-2.4.2.jar:?]**
** at com.opensymphony.sitemesh.webapp.decorator.BaseWebAppDecorator.render(BaseWebAppDecorator.java:33) ~[sitemesh-2.4.2.jar:?]**
** at com.opensymphony.sitemesh.webapp.SiteMeshFilter.doFilter(SiteMeshFilter.java:84) ~[sitemesh-2.4.2.jar:?]**
** at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.jivesoftware.util.LocaleFilter.doFilter(LocaleFilter.java:73) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.jivesoftware.util.SetCharacterEncodingFilter.doFilter(SetCharacterEncodingFilter.java:49) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.jivesoftware.admin.PluginFilter.doFilter(PluginFilter.java:226) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:193) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.jivesoftware.admin.AuthCheckFilter.doFilter(AuthCheckFilter.java:234) ~[xmppserver-4.7.4.jar:4.7.4]**
** at org.eclipse.jetty.servlet.FilterHolder.doFilter(FilterHolder.java:201) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler$Chain.doFilter(ServletHandler.java:1601) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:548) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:602) ~[jetty-security-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:235) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:1624) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextHandle(ScopedHandler.java:233) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1434) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:188) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:501) ~[jetty-servlet-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:1594) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.nextScope(ScopedHandler.java:186) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1349) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:191) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:146) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:127) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.Server.handle(Server.java:516) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.HttpChannel.lambda$handle$1(HttpChannel.java:388) ~[jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.HttpChannel.dispatch(HttpChannel.java:633) [jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:380) [jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:277) [jetty-server-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.AbstractConnection$ReadCallback.succeeded(AbstractConnection.java:311) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.ssl.SslConnection$DecryptedEndPoint.onFillable(SslConnection.java:555) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.ssl.SslConnection.onFillable(SslConnection.java:410) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.ssl.SslConnection$2.succeeded(SslConnection.java:164) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.FillInterest.fillable(FillInterest.java:105) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.io.ChannelEndPoint$1.run(ChannelEndPoint.java:104) [jetty-io-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.runTask(EatWhatYouKill.java:338) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.doProduce(EatWhatYouKill.java:315) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.tryProduce(EatWhatYouKill.java:173) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.strategy.EatWhatYouKill.run(EatWhatYouKill.java:131) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.ReservedThreadExecutor$ReservedThread.run(ReservedThreadExecutor.java:386) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:883) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at org.eclipse.jetty.util.thread.QueuedThreadPool$Runner.run(QueuedThreadPool.java:1034) [jetty-util-9.4.43.v20210629.jar:9.4.43.v20210629]**
** at java.lang.Thread.run(Thread.java:834) [?:?]**

It looks like I might need to take additional steps with my installation, but I’m not sure. So be gentle.

I think you have to keep the plugin name as pade.jar and not pade-beta-1.7.4.jar. If you want to keep the old jar file use a different extension like pade.zip and make sure the plugin file is called pade.jar and the pade folder is deleted before starting openfire.

Hi Dele;

I’ve removed and reinstalled the nightly build as ‘pade.jar’ … and repeated our testing.

The Error Messages are resolved (as you predicted) however the previous problem (from Dec 5) is still happening. The log shows:

2022.12.13 13:39:34 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 8gl1e0sbcp@localmeet2.aimlocal.ca
2022.12.13 13:39:34 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:39:45 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 2fqvydqsjr@localmeet2.aimlocal.ca
2022.12.13 13:39:45 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:39:46 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom

    >>>  Both users are disconnected  <<<

2022.12.13 13:39:50 WARN [httpbind-worker-3]: org.jivesoftware.openfire.websocket.XmppWebSocket - Failed to deliver packet; socket is closed:

2022.12.13 13:40:02 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 14k6ma0fan@localmeet2.aimlocal.ca
2022.12.13 13:40:02 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:40:13 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 14yptn25dq@localmeet2.aimlocal.ca
2022.12.13 13:40:13 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:40:18 WARN [httpbind-worker-4]: org.jivesoftware.openfire.websocket.XmppWebSocket - Failed to deliver packet; socket is closed:

    >>>  Both users are disconnected  <<<

2022.12.13 13:40:37 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom
2022.12.13 13:40:37 INFO [httpbind-worker-3]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom
2022.12.13 13:40:38 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 5vd3614508@localmeet2.aimlocal.ca
2022.12.13 13:40:38 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:40:38 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 9v2imlh1xz@localmeet2.aimlocal.ca
2022.12.13 13:40:38 INFO [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
2022.12.13 13:40:39 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lm2|org.jivesoftware.openfire.muc.MUCRoom

Can you please confirm that you have both focus and jvb users connected and online.

Also, both users should be in a group-chat called ofmeet.

image

Hi Dele;
Client Session before Connection attempt:

Room Occupants before Connection attempt:

Client Session after first Connection:

Client Session after second Connection ATTEMPT:

Interestingly, the Client IP addresses shown in the Client Session display are ‘unusual’:
image

I really hope that some if this makes sense to you.

I suspect you have a different issue. Have you looked at this issue - Users are kicked out from room since Openfire 4.7.4 and Monitoring 2.4.0

It might be causing your users being kicked out

Sorry for the long delay, but I’m finally back to this problem. And the suggestion given on Dec 22 did not solve the problem.

After a lot of exhaustive testing and installation and re-installation, I’m wondering if something may have been implemented in Pade 1.7.3 that would cause our preferred Openfire/Pade setup to fail. I’d appreciate any suggestions or insights that would allow us to keep current with Openfire/Pade.

Our ‘preferred’ setup is:

  • very basic Openfire/Pade
    
  • anonymous users can login
    
  • anonymous users can start and join meeting
    

    (we’re aware that this is a security concern, but it works for our users)

Here is a summary of our testing:

Openfire 4.7.4 and Pade 1.7.2 works perfectly
'works perfectly' means: the first user starts a meeting, provides a name, and becomes The Moderator;  subsequent users provide a name and join the meeting
here is a log snippet of 'works perfectly'

         2023.01.27 12:01:54 INFO  [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 86cu8bj3pn@localmeet2.ouropenfire.ca
         2023.01.27 12:01:54 INFO  [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
                  no additional log entries when subsequent users join

After upgrading Pade to 1.7.3, the results are 'imperfect'
'imperfect' means: the first user starts a meeting, provides a name, and becomes The Owner;  subsequent user provides a name, attempts to join and BOTH users are disconnected
here is a log snippet of 'imperfect'

        2023.01.27 12:18:23 INFO  [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 18ujdki38@localmeet2.ouropenfire.ca
        2023.01.27 12:18:23 INFO  [socket_c2s-thread-2]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner

       below are the lines when an additional user attempts to join

        2023.01.27 12:18:59 INFO  [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 9hjb04omyi@localmeet2.ouropenfire.ca
        2023.01.27 12:18:59 INFO  [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner
        2023.01.27 12:19:00 INFO  [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lew2|org.jivesoftware.openfire.muc.MUCRoom
        2023.01.27 12:19:00 WARN  [TaskEngine-pool-2]: org.jivesoftware.openfire.nio.OfflinePacketDeliverer - Could not route packet

        <iq type="error" id="63aa51a8-ecad-4761-99c0-93d7dadb13fa:sendIQ" from="lew2@conference.localmeet2.ouropenfire.ca" to="9hjb04omyi@localmeet2.ouropenfire.ca/9hjb04omyi">
          <query xmlns="http://jabber.org/protocol/disco#info"></query>
          <error code="401" type="auth">
            <not-authorized xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"></not-authorized>
          </error>
        </iq>
        2023.01.27 12:19:00 INFO  [Jetty-QTP-BOSH-109]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lew2|org.jivesoftware.openfire.muc.MUCRoom

Here are our ‘preferred setup’ Instructions(just in case our setup is the issue):
We’ve found that the installation of Openfire and Pade is actually decidedly easier that we’d been given to
expect. This ignores the fact that we really aren’t using ALL of the features available.
Here are the basic steps involved:

  1. Create a Linux Server. We’ve used Fedora.
    Set the FQDN for our hostname in /etc/hosts for the IP address that we’ll be using
  2. Install Mariadb. Start and enable this
  3. Create a Maria SQL database for use by Openfire
    mysql
    create database openfire
    3a. Grant an Openfire user permissions on the database
    GRANT ALL on openfire.* to ‘dbuser’@‘localhost’ IDENTIFIED BY ‘DbPassword1’;
    FLUSH PRIVILEGES;
  4. Download the Openfire installation media.
    from: Ignite Realtime: Downloads
    we’ve used Linux ~noarch.rpm - RPM for Red Hat Linux and variants
  5. Install the Openfire installation media
    rpm -ivh
  6. Initialize the Openfire database from the Openfire installation
    cat /opt/openfire/resources/database/openfire_mysql.sql | mysql openfire
  7. Start openfire
    systemctl start openfire
  8. Use web browser on the Server Desktop to complete the installation
    http://localhost:9090
    configure the database location and name
    configure database access username and password from 4.
    set admin email and password
    save
  9. Re-connect using web browser on the Server Desktop as the Admin User
    http://localhost:9090 - login as Admin User with Admin Password
    Change:
    Server Settings
    HTTP Bindings
    Enable XFF headers using default (listed) values and the current /etc/hostname
    Registration & Login
    Enable Anonymous Login (this might have been the default??)
    save
    Restart openfire
    You can now login from a remote computer at https://server.name:9091or continue on Server at https://localhost:9091
    accepting the SSL Certificate mismatch
    TLS/SSL Certificates :
    Configure SSL Certificate from LetsEncrypt or create self-signed certificate
    Save and Done and … save again
    Users/Groups
    Add users as appropriate … optional in our setting
    Restart openfire
    Confirm that remote login to https does NOT result in SSL complaints
  10. Change Group Chat
    Group Chat Settings
    Select Make Room Moderated
  11. Install Pade plugin
  12. Configure Pade
    Jitsi
    Unselect: Force VP9 Codec
    Refine (?): Bitrates
    Select: Adaptive Simulcast enabled
    User Interface
    Context: / (not ofmeet)
    Select: Enable Pre-Join Page
    Unselect: Generate Random Room Names
    Select: Show Page Recent List
    Select: Show Page In Progress List
    Select: Show Meeting Size Information
    Networking
    Interface & Address: Only allow the physical device and IP (???)
    WebSockets: Enable
    IP Address Mapping (AWS??): Disable
    STOP openfire
    CONFIRM that there are no ‘lingering’ openfire processes and kill them if they exist
    START openfire
    Installation is now complete. Connect to our FQDN and MEET!!

Yes Indeed. Jitsi code has been refactored recently. It is becoming more and more difficult keeping Openfire compatible with Jitsi as they use Prosody as their XMPP server. It takes a lot of effort sometimes to dig deep to find these compatibility issues.

Very little work has been done to Pade since release 1.7.0. It has been mostly refreshing Jitsi code. I see this samei ssue on my Linux server after Pade has been running for days. On my Windows dev PC, I don’t run Openfire long enough to reproduce it for debugging.

Thanks for all the info provided. If I get a free moment this weekend I will take another look.

For now, I have made an interim release 1.7.5 which reverts Jitsi back to 1.7.0.
See Release Version 1.7.5 · igniterealtime/openfire-pade-plugin · GitHub

Can you please try this and confirm it works for you. I will try and spend time on this next weekend to see if the latest Jitsi code fixes the issue.

Thanks very much for the quick response Dele;

Sadly out test results are the same. We ‘updated’ to Pade 1.7.5 from 1.7.4; then completed a fresh Openfire installation and installed Pade 1.7.5 directly. In both instances, the first users joins the meeting and as soon as the second user joins, both are disconnected with the disappointing ‘Something has gone wrong, reconnecting is ?? seconds’ message.

Here is the ‘not very informative’ log snippet:

2023.01.29 15:23:19 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for 4ligj3jc8k@localmeet2.aimopenfire.ca
2023.01.29 15:23:19 INFO [socket_c2s-thread-4]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner

  •                        first user joins*
    

2023.01.29 15:23:46 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - Applying affiliation change for lesu6q0ne@localmeet2.aimopenfire.ca
2023.01.29 15:23:46 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.MUCRoom - New affiliation: owner

  •                        second user joins and both users are disconnected*
    

2023.01.29 15:24:07 INFO [socket_c2s-thread-3]: org.jivesoftware.openfire.muc.spi.MultiUserChatServiceImpl - removing chat room:lew2|org.jivesoftware.openfire.muc.MUCRoom

Let me know please there is anything else I can try.

You need to clear your browser cache otherwise you will still be running the old Jitsi Meet code in the browser. I had the same issue when I downgraded to Jitsi code in 1.7.5

Hi again Dele;

I’ve cleared the cache and repeated the testing using Chrome on Ubuntu (both Shift+F5 and Shift+Control+Delete), Firefox on Ubuntu and Chrome on Windows 10; and the results are the same imperfect results.

I continue to wonder if the problem may be related to our preference to allow Anonymous users to start meetings, and subsequent Anonymous users to join the meeting without trying to assume ownership of the meeting. From the log file, it appears that this ‘attempt to assume ownership’ by the second users was not taking place in Pade 1.7.2 and previous.

Just my observation …