igniterealtime/openfire-ofmeet-plugin

Focus User goes offline

ageekhere opened this issue · 6 comments

system
ubuntu 16.04
Openfire 4.2.2
Openfire Focus Provider 0.9.3
Openfire-Meetings 0.9.3

Problem
Something can cause the Focus User to become offline which results in users unable to connect to a video conference.
Have to restart Focus Provider to fix.

Errors
WARN [Smack Packet Reader (0)]: org.jivesoftware.smack.AbstractXMPPConnection - Connection XMPPTCPConnection[focus@myddns.com/focus71688514975650] (0) closed with error java.lang.IllegalStateException: Could not transform string 'undefined_condition' to XMPPErrorCondition Caused by: java.lang.IllegalArgumentException: No enum constant org.jivesoftware.smack.packet.StreamError.Condition.undefined_condition INFO [pool-3230-thread-2]: org.jitsi.jicofo.FocusManager - Exception while trying to start the conference java.lang.IllegalArgumentException: The Resourcepart must not be null

Thanks for reporting this.

WARN [Smack Packet Reader (0)]: org.jivesoftware.smack.AbstractXMPPConnection - Connection XMPPTCPConnection[focus@myddns.com/focus71688514975650] (0) closed with error java.lang.IllegalStateException: Could not transform string 'undefined_condition' to XMPPErrorCondition Caused by: java.lang.IllegalArgumentException: No enum constant org.jivesoftware.smack.packet.StreamError.Condition.undefined_condition

I recognize this as a bug (that has already been fixed) in the Smack library. Supposedly, the Smack library that's used in the Focus provider needs an update.

Upgrading to the latest smack will give more meaningful error message, but root cause is that StreamManager terminates connection because of the client (in this case focus) acknowledging stanzas before they get to be known to the StreamManager.

https://discourse.igniterealtime.org/t/server-terminates-client-connection-due-to-the-client-acknowledging-a-stanza-that-was-not-sent-by-the-server/80937

We set stream.management.active system property to false as a workaround for now, but would be great to fix that issue in openfire.

I'm having the same issue after updating Openfire from 4.1.6 to 4.2.3 today on Debian Jessie (oldstable), using .deb Debian package. Plugins versions are:
Openfire Focus Provider 0.9.3
Openfire Meetings 0.9.3

Although I don't see any error in the logs between the last successful session and the first failed one, I can see that focus user did disconnect in the meantime.

Same issue with 0.9.4 Release

Switch stream management off for now. That’s what I had to do

This problem was fixed in Openfire 4.3.0.