XMPP for group chat, logged in on multiple devices
For a non-profit I am evaluating different options for a group chat, meant to replace the current Skype chat. Currently I am looking at ejabberd, a server for the XMPP protocol. The users of the Skype chat would like the new chat to have the following properties:
- Encrypted communication
- Good clients on Windows, iOS, Android, Linux and preferrably on more stuff such as web browsers
- The Android client should be better than the Skype Android client (which has historically been very slow at updating ongoing group chats)
- One should be able to be logged in simultaneously from several devices, under the same user name, and be able to switch between them transparently
So how does ejabberd handle these demands?
Simultaneous log-in
Ejabberd is better at handling a user logged in simultaneously from several devices than OpenFire - another XMPP server - in our tests. While being logged in as the same user, both Kopete and Pidgin (Linux XMPP clients) have no problem seeing each other's posted messages in a group chat, while Xabber on Android will not see their postings, but can post, and its postings are seen by the other clients. Ths is not a big problem, the only drawback is that while being on the mobile phone, you won't be able to see you own postings made in the past, if they were made from another device.
There might be some way to reconcile this, it probably has to do with priority levels for each client. Here is some further reading, although I could not seem to make a difference by tweaking the priority settings. Having chat history stored on the server may also mitigate this; will see if ejabberd can do that.
- Jabber Resources - XMPP WIKI
- Sending messages to all resources, regardless of priority | ejabberd Community Site
The XMPP Android client should be better than the Skype Android client
Xabber seems to update instantaneously. Still have to check if it can pull history from the server. I tried a slew of other XMPP clients on Android but did not find one that worked well with group chat.
Clients on all major platforms
Seems to be well supported
Encrypted communication
I initially turned this off since Pidgin does not accept self signed certificates. I then turned it on, and well, Pidgin still balks. Xanner an Kopete are fine. So off it is till we get the chat server to a domain name for which we would like to get a certificate. The three clients otherwise had no problem with encrypted communication so it will likely turn out well.