December 13th 2013 by Etienne in stuff

Run Multiple HipChat Apps

HipChat is amazing and plays an important role in our day-to-day Conference Badge support, monitoring and GIFs sharing. Almost every service we use (GitHub, Stripe, CircleCI, Twitter and our own in-app notifications) is hooked up to our dev room, we even use it for live support with our users.

HipChat Notifications

Kickoff Downtime

We used to chat with HipChat for ConferenceBadge and Kickoff for Heliom stuff. That was until Kickoff’s yesterday major downtime where we thought they had finally decided to pull the plug or something like that. Being the day of a closed-beta launch for us, we had to be able to communicate. To be honest, we’ve been wanting to switch to HipChat for quite a while, but couldn’t because you can only join a single team.

A feature that has been requested for ages is being able to join different teams with the same account. While this is said to be “under consideration”, HipChat suggests that you use the native app for a team and the web app for an other one.

Fluid.app

So we did. However, there’s just no way I’m going to use a browser where HipChat is lost amongst a few hundreds other tabs. So I installed Fluid. Mix in Hubot, it almost feels native! You can even CTRL + TAB between rooms.

Downsides

A few downs though: You can’t s/fxi/fix typos, notifications aren’t quite stable and you can’t hide NSFW images (no little arrow). This is more than enough for me to figure out a way to run multiple native apps.

Here comes the (boom) <- lol HipChat

Turns out it is quite easy.

  • Duplicate your HipChat.app;
  • Right click > Show Package Contents;
  • Open Contents/Info.plist and edit CFBundleIdentifier & CFBundleName. Here’s the modified values I used:
[…]
<key>CFBundleIdentifier</key>
<string>com.hipchat.Heliom Hipchat</string>
[…]
<key>CFBundleName</key>
<string>Heliom Hipchat</string>
[…]
  • Rename the app to whatever you want, it doesn’t matter. I used “Heliom HipChat”;
  • Change the icon to your liking. See how to use a .png;
  • Launch the app, login and profit!

Multiple Apps

Downsides

It’s almost perfect! But mention autocompletion doesn’t work…

HipChat Notifications

If you hit tab it’ll mention @(null). However, notifications do work, but you need to type the whole mention name yourself without using the auto completion. Do note that for me it only happens on one of the two apps (the original one). We may have to change something else in the Info.plist file.

No biggie though, we changed all of our mention names to single letters (@e, @r, @t, etc).

It still isn’t a single app with multiple teams, but two native HipChat apps. It’ll have to do for now :)