Openfire 3.6.0a

Openfire (formerly Wildfire) is a real time collaboration (RTC) server dual-licensed under the Open Source GPL and commercially. It uses the only widely adopted open protocol for instant messaging, XMPP (also called Jabber). Openfire is incredibly easy to setup and administer, but offers rock-solid security and performance.

Download Openfire 3.6.0a Latest release: August 28, 2008

Openfire 3.6.0a

Latest Blog Entries
jadestorm
7

Openfire 3.6.0 has been released!

We are very pleased to announce the release of Openfire 3.6.0!  It has been a long time coming and may well include the highest number of bug fixes and improvements we've ever had in a single release.  Don't quote me on that, but it's certainly the largest number I recall seeing.  =)  While the bulk of them are bug fixes, there are a couple of big improvements I would like to highlight!

Clearspace Integration Improvements

We've improved upon the integration between Openfire and Clearspace quite a bit.  Most are bug fixes and performance improvements, but also some new backend features that further solidify the bond if it is set up.  Openfire now includes a Clearspace tab when integration is enabled so help make sure the link is performing properly.  On top of that, there are a lot of features in place in preparation for the addition of real time chat support in Clearspace.  More information will come on that at a later date.  We've also renamed the tables Openfire uses to make it easier to install it alongside other products in the same database, if you so choose.  The automatic upgrade procedures will take care of all of the hard work for you, so you shouldn't need to give it a second though.

LDAP Support Improvements

Openfire's LDAP support had some holes in it here and there that should be filled now.  Altbasedn, for example, was not used everywhere.  There is now support for alias following (or rather, turning it off), paged results (to make sure to get all of the available results instead of a subset), and a number of bug fixes for existing functionality.  Internally, a lot of the code has been cleaned up.  I still have a couple of things up my sleeve here and there for a future release, but I'm quite pleased with how this is looking now.

Multiple Conference Services

Every wished you could have more than one conference service set up with different rules?  Maybe you wanted one for public access with no room creation rules and restrictions, but also wanted an internal "protected" service that abided by strict rules.  Maybe you just wanted to set up some sort of specialized set.  Maybe you never wanted -any- conference services and just wanted to delete them.  Whatever the reason you might have, you can now set up as many or as little as you want.  In some cases, plugins may even be able to take advantage of a specialized service setup.

BOSH (HTTP Binding) Improvements

With many thanks to our Google Summer of Code student, Safa Sofuoglu, we now have updated BOSH 1.6 support, and a ton of misc bug fixes and improvements.  Improvements in this area were also performed on the connection managers!  I encourage you all to read about it in his report:

GSoC 2008 Report: Openfire and SparkWeb

More Configuration in Database

The openfire.xml config file was getting bloated and a lot of the configuration in it could easily have been moved into the database.  As a result, we've moved just about everything that doesn't fall into a category of:

  • how to connect to the database itself
  • config info specific to host itself

Why you might ask?  In a clustered environment, it makes it so you can set Openfire up once and now have to reconfigure the providers and such for each cluster member individually.  It also paves the way for support for things like, admins stored in the database, which means you can update the admin list on the fly, instead of having to edit openfire.xml and then restart the server.

Plugin Updates

It's important to update the following plugins to account for changes in the 3.6.0 API:

  • User Search
  • IM Gateway
  • Fastpath
  • Monitoring

Where Do I Get It?

You can download Openfire 3.6.0 here.

You can see the entire changelog here.

You can view the documentation for 3.6.0 here.

Plugins can be downloaded from the admin console or here.

Tags: openfire , release 7
huni
6

GSoC Project Successfully Completed!

I am proud to announce that I have successfully completed my Google Summer of Code Project. As we hit the official pencils down date, I thought it might be good to publish results and final toughts.

I started the project in time and completed it 3 working days later than planned, though it could require more effort if we didn't change our goals. I cooperated with Tomas and Tobias to fix the flaws I couldn't notice during development. Changes I made to Openfire and XIFF are listed here and here. All changes have been imported into trunk and hopefully be included in next releases.

It was a wonderful experience to work on Openfire and SparkWeb, especially with my mentor Gaston. Even if my GSoC project is complete, I feel there'll always be something to do for me with Jabber. I am having fun with Jabber, and planning to continue working on Jabber development as a community contributor.

I would like to thank Google for giving me such a great opportunity. I also thank David Smith and Peter Saint-Andre for their excellent support.

See you around!

Tags: gsoc , xmpp , bosh , openfire , sparkweb , xiff 6
huni
0

XIFF (and SparkWeb) now support BOSH 1.6

I have updated the XIFF library to be compatible with BOSH 1.6. As SparkWeb is based on XIFF, most of the information here also applies to SparkWeb. Main good news are:

  • Login phase and communication using BOSH is noticeably faster thanks to new overactivity rules of 1.6.
  • BOSH connection is tested and working with Openfire, Tigase and ejabberd.

Additional Work

  • Added logging support to XIFF using Flex logging API (mx.logging).
  • Moved SASL logic from XMPPBOSHConnection to XMPPConnection, so now both connection types (BOSH and socket) share the same authentication code. Previously, socket connection was using non-SASL authentication.
  • Cleaned up some dead code and made BOSH connection class more configurable.
  • Fixed a few Openfire BOSH issues that appeared when testing XIFF.

Known Issues

This updated version of XIFF will be fully compatible with the updated Openfire and Openfire's BOSH update will be included in version 3.6.x. However, there is an issue with Openfire versions released before the update.

According to XEP-0206, after a successful authentication, clients should send a body with xmpp:restart attribute set to true. But older Openfire versions do not recognize xmpp:restart, handling the request as if it was a polling request. Thus, it responds to the client after 30 seconds.

If you use the updated version of XIFF or SparkWeb with a version of Openfire that does not support BOSH 1.6 (i.e. lower than 3.6), please be aware that you will be experiencing a latency of 30 seconds during logins.

Tags: xiff , sparkweb , openfire , bosh , gsoc 0
dele
7

Flash-based Audio and Video in Spark, SparkWeb and Openfire

When SparkWeb became open-source, I took a look at the source code and found it had more features than the Flex-based XMPP client I was co-developing for the Red5 Plugin. It therefore made sense to migrate the Flash audio and video features we had developed for our client to SparkWeb and make it compatible with the Spark and Openfire Red5 Plugins and package it as part of the Red5 plugin. The downside to this that the modifications to the Red5 version of SparkWeb makes it out of sync with the official SVN and it could possibly become a fork requiring a name change later on.

So what does the Red5 SparkWeb offer?

  1. A plugin container for SparkWeb. I noticed that quite a number of users are asking for a plugin to deploy SparkWeb. My advice would be to try the Red5 Plugin.

    Configure Index.html and point your users at

    http://your_server:nnnn/red5_webapp_name/sparkweb

    Where nnnn is your HTTP-BIND port number (default 7070) and red5_webapp_name is your default red5 web application name (default red5)

  2. Enables use of the Red5 plugin audio and video features with both Spark and SparkWeb. You can't do video messaging and the video roster is replaced with visual presence (see below). You can make audio/video calls and share your desktop with your contacts. Each call record is logged in openfire and can be queried by the administrator with the Openfire SIP plugin.

  3. Makes SIP phone calls between Spark and SparkWeb users. All SparkWeb SIP calls are logged with the Openfire SIP plugin as well.

  4. Provides webcam support. If you have a webcam installed on your PC, it will be automatically detected and will be used instead of your vcard photo. You can disable this in index.html. You can add or replace your vcard photo with a snapshot of your webcam when you edit your profile. You can also publish snapshots from your webcam as visual presence to all your contacts. What this means is that all your contacts will have a snapshot of your webcam in their rosters. The interval between snapshots is 60 secs by default and can be modified in index.html. See a draft copy of my proposal to extend XMPP with visual presence. Please feel free to post comments at the bottom of the document.

I also made a few cosmetic changes to my taste and added sound effects for incoming calls and instant messaging. I added some code to improve the loss of focus detection by tracking Flash application activation/deactivation messages and mouse movement. If you use Internet explorer and enable pop-ups, you will get a pop-up in the bottom right corner of the screen with a photo, name and first line of the incoming messaging if you are outside of SparkWeb when a new message arrives.

I am hoping to add fastpath support and a calendar to SparkWeb next.

Tags: openfire , spark , sparkweb , red5 , plugin , video , audio , sip , flex , flash , webcam , visual , presence 7
huni
9

GSoC 2008 Report: Openfire and SparkWeb

I am working on BOSH support of Openfire and SparkWeb as part of the Google Summer of Code 2008. As we got past the midterm evaluations, my mentor Gaston and I thought it would be good to inform the community about what I have done so far.

My proposal involved updating and improving Openfire's BOSH support by updating the implementation to BOSH 1.6, and migrating Apache MINA as its connection provider.

I started with creating a load test environment to see Openfire's current performance, and created a document explaining how to use it. Then I ran some load tests using that environment. Unfortunately, the test machines I used were not enough to produce desired results.

As the next part of the project, I updated Openfire's BOSH to support both 1.5 and 1.6. Here is a summary of the update:

  • Added 'hold' and 'ver' attributes to the session creation response.

  • Fixed version checking. Before it was done using a double variable, which may show that 1.5 is newer than 1.10.

  • Script syntax support has already been added before. Finetuned it to prevent caching of responses.

  • Implemented in-order message forwarding (JM-1412), because further work seemed to be depend on this implementation. This is the part that took most of my time, also which made me to get more familiar with the code after long debugging sessions.

  • Implemented acknowledgements, which was intoduced in version 1.6.

  • Added support for session pauses, which was also new for 1.6.

  • Implemented overactivity checking. In 1.5, there was only 'polling too-frequently error', and a little description about it. Version 1.6 introduced a new section for overactivity, and has a detailed description of which circumstances should be considered overactivity.

With this update, I have seen that some BOSH issues I was not aware of (JM-1245, JM-1246) have also been resolved. The update has been merged into Openfire trunk, so you can grab and test it.

After the update, I started to investigate how to migrate to Apache MINA, and found out that it would be harder than we expected, because the version used by Openfire, 1.x, did not have any http support. We had also other alternatives, like Grizzly, so we deferred the decision about connection providers until we do some tests on them.

I am currently working on SparkWeb to make it fully compatible with BOSH 1.6. In the meantime, I am cooperating with Tomas Karasek, who is developing BOSH for Gajim, to resolve any BOSH related issues in Openfire.

I am open to any ideas/suggestions.

Tags: gsoc , xmpp , open-source , sparkweb , openfire 9

gato gato Found in the forests of Argentina chewing on his own leg and reading a book on concurrent programming.

Latest Build 3.6.0a
Downloads 1,291,958
License Open Source GPL or Commercial
Platforms Windows, Linux,
Unix, Mac OS X

Room Administration Room Administration

See more...