same-o-matic

Need to connect a Freenode channel to a room in HipChat? Or want to give customers a simple way to connect to a channel in your Slack team?

Sameroom does that!
Learn more

 Subscribe via RSS

Self-Hosted Team Chat Options and Alternatives

by Andrei Soroker and Niral Patel

When you think of team chat, products like Slack, HipChat, Kato, or Skype come to mind. However, these are all cloud services: when you use them, you entrust a key asset of your company—your real-time business communication archive—to a third party.

Both HipChat and Slack had recent security incidents, with Slack’s particularly daunting: their entire user directory was compromised. (Luckily, that news coincided with a $160 million funding round, so nobody noticed.)

Since popular cloud services are expected to be continuously scrutinized by internet outlaws and—eventually—hacked, some IT departments prefer the control that comes with an on-premise option.

This control comes at a cost, however, as there are two significant problems with a self-hosted corporate chat solution.

First, mobile push notifications are very difficult, if not impossible, to set up, meaning all mobile staff (sales, execs, etc) will quietly use another service, such as SMS, AIM, or even Facebook.

Second, company-wide on-premise solutions make it very difficult to configure integrations and chat-driven workflows (chatops) that most modern technical teams consider absolutely essential—such teams are very likely to quietly sign up for a cloud service, only resorting to company-wide chat for cross-team communication.

In this post we’ll take a look at some of the self-hosted solutions available. They range from hobbyist side projects to truly Enterprise—with a capital E.

1. HipChat Server

Atlassian HipChat has been available as a cloud-based professional team chat solution since 2010. In early 2015 HipChat Server was announced, enabling companies to self-host HipChat behind a corporate firewall. Pricing ranges from $10 per year for a team of ten to $72,000 per year for 5000 users.

2. Cisco Jabber

Cisco Jabber started out as Jabber XCP, which was the commercial arm of the open source Jabber.org project (the initial reference implementation of XMPP).

Jabber XCP was acquired by Cisco in 2008 and is available as part of Cisco’s Unified Communications suite of products. Cisco Jabber offers integrations with Microsoft Office applications.

Jabber is sold by resellers, so pricing will vary between installations.

The main issue with Cisco Jabber is that it’s not, strictly speaking, “team chat”, because it lacks open, named, persistent rooms with searchable history. Therefore, a company that deploys Jabber will very likely see groups adopting cloud team chat solutions.

Cisco’s response to this is its own recently-launched cloud team chat solution called Cisco Spark.

3. Self-hosted XMPP Server

A much cheaper alternative to Jabber is a self-hosted XMPP Server.

The best-supported XMPP server is probably MongooseIM, which began life as a fork of ejabberd (the best-known XMPP server) and is supported by Erlang Solutions.

A self-hosted XMPP server will provide a company rudimentary IM, but it is not a replacement for a full-blown team chat solution.

Redundancy, backups, provisions for mobile access and mobile push notifications are the responsibility of the admins running a self-hosted XMPP system.

4. Skype for Business Server (Lync Server)

Over the years, Microsoft has amassed quite a collection of communication services. In addition to Hotmail and Exchange (email), for over 15 years Microsoft ran MSN Messenger, which was used heavily by businesses.

Microsoft became a key early player in cloud-based team chat space with its purchase of Skype in 2011. Skype, in turn, bought GroupMe, which has been known to be used by professional and semi-professional teams for real-time communication.

In addition to this—largely consumer—IM product line, Microsoft has supplied an on-premise real-time communication solution since Exchange 2000, which included Exchange Instant Messenger service. It was replaced in 2003 by Microsoft Office Live Communications Server, which in turn was superseded by Microsoft Lync Server in 2010. The Lync Server comes with a corresponding Lync desktop client.

In 2015, Microsoft announced plans to replace the Lync client with Skype for Business—a hybrid compatible with both the on-premise Lync Server and the cloud Skype network.

Skype for Business will liberate Lync users from having to run two IM programs at the same time (Lync and Skype)—for internal and external communication—but it should not be viewed as a full-fledged alternative to a professional team chat service. IT departments that deploy a company-wide Lync Server should expect to see multiple groups adopting professional team chat services without prior consultation with IT.

Skype for Business / Lync can be purchased through resellers, which means prices will vary.

5. IBM Sametime

IBM Sametime is directly competitive with Microsoft Lync Server and Cisco Jabber. It is an on-premise enterprise communication suite with a wide array of functions, but it is not directly competitive with professional team chat services. Therefore, companies that deploy IBM Sametime should also expect to see groups adopting cloud-based team chat solutions for small team communication.

IBM is likely to announce its own team chat service some time in 2015 or 2016.

6. IRC

“IRC”, in the context of self-hosted group chat systems, refers to collection daemon programs, all claiming compatibility with the IRC protocol. To implement IRC for internal company communication, all you have to do is:

  1. Choose an IRC daemon to deploy. There are many different options.

  2. Designate a machine or VM behind your firewall for the IRC service;

  3. Decide how chat history will be logged and searched by end users. There are multiple options for this, ranging from grepping logs on the IRC host machine to deploying IRC bouncers;

  4. Figure out your mobile strategy: there are IRC mobile clients that will work with publicly-accessible IRC servers, but will not work with a server behind a firewall. VPN is one way of dealing with this issue, but push notifications—if available at all with your IRC setup—will not work without an active VPN connection;

  5. Figure out your backup strategy—if your IRC server experiences a malfunction, you need a way to recover the logs of your company’s business communication;

  6. Figure out your redundancy strategy—if your IRC server experiences a malfunction, the company will lose its key communication channel, which may bring all operations to a standstill. You may want to have a hot-standby server available, with some sort of an automated failover system in place.

7. Let’s Chat

Let’s Chat is an open-source, web-based, XMPP-compatible, self-hosted chat service from Security Compass, released in 2012. There are no mobile apps available and no provision for push notifications.

8. Mattermost

Mattermost is one of the new players in the self-hosted market. It’s an open source team communication solution—interestingly, a spin off from SpinPunch, a video gaming company. The team is already working on an iOS app and has plans for enterprise support.

9. Rocket.Chat

Rocket.Chat is another new face with a unique agenda, providing an open source alternative to both commercial services and IRC. Rocket.Chat has a Slack-inspired webapp, an Electron-based desktop client and, more recently, an iOS app. More importantly, as of August 13, 2015, the project has 2834 stars and 364 clones on GitHub.

Other posts, recipes, and announcements:

same-o-matic

Need to connect a Freenode channel to a room in HipChat? Or want to give customers a simple way to connect to a channel in your Slack team?

Sameroom does that!
Learn more

 Subscribe via RSS