Hi!
For some days I’m trying to get videoconferencing working with Openfire 4.5.1 and ofmeet 0.9.5 without success and it looks like I need help.
I tried several fresh basic Openfire installations from the provided RPM, but the results are always the same: Connecting with the browser to https://servername:7443/ofmeet works, users can select a room and log in. Users can allow access to their camera and microphone. Inside the room users see the video stream of their own camera and avatars from other users as soon as they enter the room. Users can use the chat sidebar to chat with each other, users can raise/lower their hand and other users will be notified accordingly. But each user can neither see video nor hear audio from the others. In the avatar pictures of the other room members, their camera is shown as stopped and the microphone is shown as muted.
I used openfire-4.5.1-1.noarch.rpm from the download site and installed the meetings plugin inside the admin UI “available plugins” page.
On the server side I tested on various hardware under CentOS 8 and OpenSUSE 15.1
Java was always OpenJDK 1.8.0_242
I tested with self-signed certificates (as provided by the Openfire installation) as well as certificates signed by our CA and installed using the keytool utility.
On the client side I tested with Firefox 68.6.0esr, FF 68.2.0esr and Chromium 80.0.3987.132 under OpenSUSE LEAP 15.0 and 15.1
I tested with server and clients all inside the same IPv4 Class-C network as well as with clients connected to the server via VPN
Firewall is deactivated on each host.
The few hints I currently have are lots of Java exceptions in the Openfire logs. I got these on each test installation.
The most severe seem to be this one from error.log:
2020.03.21 12:30:07 org.jitsi.videobridge.health.Health - Health check failed in 11ms:
java.lang.NullPointerException: null
at org.jitsi.videobridge.RtpChannel.initialize(RtpChannel.java:903) ~[jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.Content.createRtpChannel(Content.java:339) ~[jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.Content.createRtpChannel(Content.java:263) ~[jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.check(Health.java:152) ~[jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.doCheck(Health.java:244) ~[jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.doRun(Health.java:495) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.util.concurrent.PeriodicRunnableWithObject.run(PeriodicRunnableWithObject.java:87) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.run(RecurringRunnableExecutor.java:216) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.runInThread(RecurringRunnableExecutor.java:292) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.access$000(RecurringRunnableExecutor.java:36) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor$1.run(RecurringRunnableExecutor.java:328) [libjitsi-1.0-20190128.210332-374.jar!/:?]
or this one from info.log:
2020.03.21 12:31:47 org.jitsi.impl.libjitsi.LibJitsiImpl - Failed to initialize service implementation org.jitsi.impl.neomedia.MediaServiceImpl.
java.lang.NoClassDefFoundError: Could not initialize class org.jitsi.impl.neomedia.device.DeviceConfiguration
at org.jitsi.impl.neomedia.MediaServiceImpl.<init>(MediaServiceImpl.java:160) ~[libjitsi-1.0-20190128.210332-374.jar!/:?]
at sun.reflect.GeneratedConstructorAccessor46.newInstance(Unknown Source) ~[?:?]
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45) ~[?:1.8.0_242]
at java.lang.reflect.Constructor.newInstance(Constructor.java:423) ~[?:1.8.0_242]
at java.lang.Class.newInstance(Class.java:442) ~[?:1.8.0_242]
at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.initializeService(LibJitsiImpl.java:196) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.impl.libjitsi.LibJitsiImpl$ServiceLock.getService(LibJitsiImpl.java:131) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.impl.libjitsi.LibJitsiImpl.getService(LibJitsiImpl.java:91) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.impl.libjitsi.LibJitsiOSGiImpl.getService(LibJitsiOSGiImpl.java:95) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.service.libjitsi.LibJitsi.invokeGetServiceOnImpl(LibJitsi.java:172) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.service.libjitsi.LibJitsi.getMediaService(LibJitsi.java:124) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.videobridge.Conference.getMediaService(Conference.java:1109) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.Content.getMediaService(Content.java:739) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.RtpChannel.getMediaService(RtpChannel.java:780) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.RtpChannel.initialize(RtpChannel.java:893) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.Content.createRtpChannel(Content.java:339) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.Content.createRtpChannel(Content.java:263) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.check(Health.java:152) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.doCheck(Health.java:244) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.videobridge.health.Health.doRun(Health.java:495) [jitsi-videobridge-1.1-20190125.162313-103.jar!/:?]
at org.jitsi.util.concurrent.PeriodicRunnableWithObject.run(PeriodicRunnableWithObject.java:87) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.run(RecurringRunnableExecutor.java:216) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.runInThread(RecurringRunnableExecutor.java:292) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor.access$000(RecurringRunnableExecutor.java:36) [libjitsi-1.0-20190128.210332-374.jar!/:?]
at org.jitsi.util.concurrent.RecurringRunnableExecutor$1.run(RecurringRunnableExecutor.java:328) [libjitsi-1.0-20190128.210332-374.jar!/:?]
I don’t know if these errors are severe enough to trigger the problems I see, though.
As I’m basically stuck at this point my questions currently are:
- Are there any known problems with the latest versions of openfire and the meetings plugin which could explain the behavior I see?
- Has anyone got this combination to work together successfully?
- What might be wrong with my installations, especially if one considers the exceptions shown above?
Any help to get videoconferencing with Openfire and the meetings plugin up and running would be appreciated!
Thanks!
– andreas