Skip navigation
All Places > Ignite Realtime Blog > 2015 > December

Spark 2.7.4 Released

Posted by wroot Champion Dec 18, 2015

The Ignite Realtime community has just released Spark 2.7.4 and it can be downloaded from Ignite Realtime: Downloads.


This update is a lot about updating translations (Russian, Chinese (Traditional), Lithuanian, etc.) and making some hardcoded parts of GUI available for translation. Also an old patch for proxy connection has been applied in this version, but it looks like Spark is ignoring proxy settings and connects directly instead. Needs more live testing (please report in the forums).


For a complete list of changes please check the official Spark Changelog


We are glad to receive patches from contributors on igniterealtime/Spark · GitHub. 6 of them included in this release. Thank you, guusdk (Guus der Kinderen) · GitHub, idma88 (Dmitrii Ivanov) · GitHub and CrystalLee. We hope more developers will find out about this and other Ignite Realtime projects and contribute patches.


Here are sha1 checksums for the downloads:


c8531c2a25b6f707df1ca95bae33f7c992c8376e  spark-2.7.4.rpm

7e250a2f41d9c218929a601d389382f8ce0288b7  spark-2.7.4.src.rpm

a9718810e11947df15df208314713a1c93bbac8f  spark_2_7_4.deb

7eae89de422a99588d1dc51bf9f07a34a5b6a1a6  spark_2_7_4.exe

364f716457d6070bbd5a4f531d531f97ffc80bed  spark_2_7_4.tar.gz

b97ad875edeae2c12e4b09b849f2f500293da81a  online/spark_2_7_4_online.exe


[Voice Chat] Voice chat is broken since the migration from proprietary JMF to free FMJ framework and there is no fix in the works. Spark project lacks good java developers.

[Mac OS X] There is no installer for Mac OS X (installer building system has issues with Mac OS X, also Spark has too many major issues on this platform).

[Linux] Linux version has issues with menu not showing up and chat window not opening normally on the latest Ubuntu version. Also flashing plugin is not working on Linux systems.

Dave Cridland

Openfire 4.0.0 Beta

Posted by Dave Cridland Champion Dec 14, 2015

Wouldn't it be great if your favourite XMPP Server was almost about to make a major release? Well, stop imagining, and start downloading, because Openfire 4.0.0 has reached Beta status!


This means that while we're quite sure there's bugs to be found, we believe the server is stable enough to use for formal testing and careful use in non-critical production environments (which means, basically, we're using it on itself and our own servers).


So if you're keen to help make this the best Openfire release we've ever made, then download, install, and keep us posted in the chatroom at


Download from here: Ignite Realtime: Beta Downloads


A Change Log is here: Openfire Changelog


And SHA1 checksums are below:


Mac OS X6b498b67a47f81969352ad8c6a94a12cf50aa946openfire_4_0_0_beta.dmg
Source (UNIX)af846e168fb446c3001711c5a8337f5e7494cc47openfire_src_4_0_0_beta.tar.gz
Source (ZIP)
Debian / Ubuntu3f37ec574c3fdca231b94b0c67f7d5c3d37fe2eaopenfire_4.0.0.beta_all.deb
Source (Redhat / CentOS)e73d303bc58e19a2d714c5bd8b3f7d2952305cbeopenfire-4.0.0.beta-1.src.rpm
Redhat / CentOS16f76f7eb2eea1b49d85d0f50a673a3c418cc42dopenfire-4.0.0.beta-1.i386.rpm



Dele Olajide

Q&A for Openfire Meetings

Posted by Dele Olajide Champion Dec 12, 2015

Over the last few weeks, I have answered a few questions about Openfire Meetings and would like to post them here for others who might find them useful.


How do create a co-browsing between participants in a meeting


Co-browsing, in the context of web browsing, is the joint navigation through the World Wide Web by two or more people accessing the same web pages at the same time.

Co-browsing URLs are configured with the client control plugin. You can share URLs with all, specific users or user groups. The URL description appears in the pull-down list of the collaboration applications menu on the web client. It should also appear in Spark, but I have never tested it. The basic user experience is the syncing of DOM events via the chrome extension and the visual shared cursors of each participant labelled with their names. See this blog for more details.

How do I setup the SIP integration for Openfire Meetings? How can I achieve call-in and call-out to meetings?


SIP integration is a bit detailed. It only works with persistent chat rooms. It requires changing the default values in the openfire meetings settings admin web page.  You have to enable VOIP, audio mixer and configure either or both server and client roles. In server role, Openfire meetings will act as A SIP registrar and accept SIP registrations for any standard SIP phone or device or mobile softphone app.  In client mode, openfire meetings will register with Asterisk, FreeSwitch or any SIP proxy, IP PBX. To associate a SIP phone call with an openfire meeting, you decide on any dial-able telephone number from the SIP device or SIP Proxy/PBX and link it with a chat room. You can put the number in the description or create a room using the telephone number as the name.


For outgoing calls from the web client, you must also make sure that one of the room moderators is a participant in the meeting otherwise the telephone icon will not appear. You can optionally use the client control plugin to define SIP/TEL URIs that will appear in a pull down list when the telephone icon is clicked. I have added support for a multicast URI, but you need to look at the source code for more information. For incoming, you can only join an active meeting. When the SIP invite is received, the SIP URI telephone number is matched against all active meetings and SIP endpoint audio is added to conference audio mixer.

When the openfire meetings audio mixer is enabled, audio quality is reduced to G711 ulaw in order to manage the CPU load on the server while mixing the audio streams. This will affect the webrtc user experience in the browser. If you do not use an audio mixer, then your SIP endpoint (phone, softphone) will only work if it supports multiple audio streams and has a client side audio mixer like the Jitsi desktop app.

How do I record a meeting?


Enable meeting recording (audio/video/screen share) and specify location of media files/folders from openfire meetings settings. Video is recorded only in linux 64 servers. On everything else (windows, 32 bit servers), only audio is recorded.


The PDF viewer does not work or is very slow. How can I fix this?


The PDF rendering engine is implemented in JavaScript. Not sure it can go any faster. The key would be to use simpler PDFs. I save my powerpoint presentations as PDFs and get a good performance from them. Also, the use of JavaScript creates a cross-domain issue and therefore the PDF file is fetched by the server and not the web browser. You need to make sure the Openfire server has network access to the PDF web server. If the PDF is being fetched from the Internet, then your OF server needs access to the internet as well.


I can see Openfire Meetings has an API. can I use it from my web applications?


To do this, take a look at the demo video conference application (index.html) using the api in the “api” folder of the ofmeet plugin. You need to do the following things:


  • Include “ofmeet.css” to get the correct styling and positioning of the video divs. The current  behaviour is to use the full screen and auto-repostion/resize as participants leave or go. Please note that the api does not include the toolbar and all its features. Your application must implement those via api calls. Only the UI for the main video window and film strip for participants are implemented in the api.

  • Include “/ofmeet/config”, the generated script file which contains all the settings and server config data packaged as a global object called “config”

  • Include “ofmeet-api.js” which contains all the javascript for openfire meetings  (including all dependencies like jquery) encapsulated in a global object called ofmeet. This ensures there is no name clashes with your own application if you add ofmeet-api.js directly to your application without using an iframe.

  • Write your application using the config and ofmeet objects as follows:
    • Create event handlers for all ofmeet events. See index.html for the most common. All others can be found by looking at the ofmeet-api.js code for document.trigger calls.
    • Trace the application flow in index.html starting from jquery document.ready event. First thing to do is call ofmeet.ready(username, password). Handle ofmeet.ready event and call ofmeet.connect.
    • Handle ofmeet..connected and join the conference room with ofmeet.joinRoom(roomName, audioVideoFlag).
    • You can exit the conference with ofmeet.leaveRoom(). Make the whole UI visible/invisible with ofmeet.visible(flag).Toggle audio/video mute with ofmeet.toggleVideo() and ofmeet.toggleAudio()

Filter Blog

By date: By tag: