SparkMeet - Spark Plugin for Openfire Meetings

Lately, I have stared to use Spark client again alongside Skype for Business which I use daily for my professional work. My renewed interest in Spark came initially to have a look at the hard work @wroot, @guus and the rest of the igniterealtime community had put into Spark 2.8.1 and also to access the chat rooms at igniterealtime, especially the IRF.

I use Openfire Meetings myself from time to time and had developed a basic plugin for Spark that allows users to join audio and video conferences hosted by Openfire Meetings. See the documentation for more details. It provides a button from a Multi User Chat (MUC) room or chat window within the Spark client, to open a Chrome window using the same URL as the Jitsi Meet web client. It therefore assumes you have Chrome installed and configured as your** default browser.** It works, but the user experience is not ideal.

I had done some work with Java Chrome Embedded Framework (java-cef) a while back and decided to use it directly instead of depending on Chrome installed and configured as the default browser. I spent my weekend working on it and this what I have to show for my effort

It is a much better user experience than opening a Chrome browser window out of context somewhere else. Like everything in life, there is a price to pay. It does not do screen sharing and does not work on OSX. (don’t know how to configure java-cef for OSX). I have tested it at home on my windows win32 desktop and will test it tomorrow at work on my win64 desktop. I would appreciate any feedback from Linux users.

The source code is on the Ignite Realtime GitHub repo and PRs are welcome especially to make it work on Macs (OSX)

Update

I have given up on java-cef. The lack of current pre-built binaries and missing features like screen share makes it difficult to work with. Our UI expert at work suggested I tried Electron Atom instead. It proved to be very good advice. Whole screen sharing is now available. Desktop sharing and remote control to come later. You will need Openfire Meetings 0.3.28 and above to use it and the pre-built Electron run-time files are available for Windows, Linux and OSX unlike java-cef… Spark will take a take a minute or two to start after the plugin is deployed. Any feedback on OSX and Linux will be appreciated.

I am going to miss the potential of I could do with the tight Java integration, but with Chromedriver, a new world of JavaScript API development with Spark beckons.

6 Likes

This is great! We can eventually bundle the plugin with the Spark, to make it easier to distribute and use

2 Likes

This is great! Thanks for giving spark some love!

Boa tarde!

Prezado, estou usando o plugin Meetings mas ao iniciar a conferencia pelo Google Chrome não habilita o áudio e vídeo, alguma sugestão?

+1 to bundling the plugin and to avoid plugin problems such as explained here: PluginProblems.com | Modules Extensions

I have raised a PR to add the plugin to the main Spark repo. As for bundling, I have raised more questions than answers in the PR because of the Electron run-time files for the the different OSes.

What are the chances that your UI expert would be willing to get involved with the community? Getting spark an current/updated/modern refresh would be pretty awesome

Dele, well that’s a start Thanks. I have asked Guus and Daryl to take a look at your PR and maybe they will have some ideas about bundling. I still have to try it out myself. Maybe today.

Not likely,I am afraid. He is an HTML5 expert and won’t touch Java even if you paid him

What we could do us to start the next generation of Spark based on HTML5 using Electron. The same web client would be Sparkweb from a regular web browser. Flash is being deprecated, so that project will die soon.

That might get him and many more interested

Like the picture

Still can can help feeling there is a happy middle ground between both

Bundling is not a good idea currently as this plugin is relying on Ofmeet version which hasn’t been released yet and which in turn is probably relying on alpha version of Openfire which hasn’t been released yet and won’t be for a long time.

Not exactly

It needs Ofmeet version 0.3.29. The source code is released and on GitHub. I forgot to upload the binary Jar file. Anyone can run the ANT build and update the jar file on igniterealtime which is a very old version 0.3.9

There is a new version of Openfire Meetings (0.4.x) that Guus is working on. That is probably the one you are referring to

0.3.29 is compatible with 4.0.3 Openfire? @Daryl Herzmann can you update the plugin?

Yes. 0.3.x is in maint mode and will always be compatible with current Openfire release until it is deprecated in favour of 0.4.x

@wroot I found 0.3.27 available for download, but not 0.3.29. So I updated the website for 0.3.27

@Dele Olajide, we could always create a bamboo job for ofmeet to build artifacts for website download. Would you like that?

@Daryl Herzmann, yes please

appologies for wrong version. 0.3.27 is the current binary on GitHub. The source code is at 0.3.28

This is really great. The username/password need to be url-encoded i guess? Users with special characters in their passwords get a malformed url error from the java url parser.

Well spotted. Yes Indeed :slight_smile: Thank you

Just pushed an update on the PR to URl encode both username and password. Thanks for that.

Hello! Long use openfire, yesterday I decided to upgrade to the new version. installed 4.0.3 installed the plugin ofmeet through chrome works, but I’d like to get as in the screenshot with topics that would in the application of a spark to the video, please tell me, is there such a possibility? earlier I tested red5 there was such a possibility, the video displayed in the application spark, would like to have the same implementation