Differences between revisions 6 and 7
Revision 6 as of 2014-08-13 20:32:07
Size: 3247
Editor: sea-ex10
Comment: add a weechat filter
Revision 7 as of 2014-09-11 18:29:15
Size: 3548
Editor: 203-155-18-190
Deletions are marked like this. Additions are marked like this.
Line 65: Line 65:
For emacs erc:

(defun my-reformat-jabber-backlog ()
    (goto-char (point-min))
    (if (looking-at
      "^<root> Message from unknown participant Your Name:")
     (replace-match "<yournick>"))))
(add-hook 'erc-insert-modify-hook 'my-reformat-jabber-backlog)

Setting up Hipchat with BitlBee

Hipchat is a chat service by Atlassian that provides an XMPP server. It's the choice of many businesses, as it supports mission critical features like pasting images and having them show up inline in the chat, and silly meme-like things that happen if you type things like "(awwyeah)".

As such, it's only used by people who have no other choice. If you can decide what chat service to use, please get a real XMPP server with real XMPP clients instead.

Since there are several issues with hipchat, this page tries to document workarounds to use it with bitlbee.

Official information on their XMPP, including technical details, is available here

Initial setup

Get your account details from this page, and use your jabber ID here:

account add jabber 123456_789012@chat.hipchat.com
account jabber set tag hipchat

The jabber IDs of hipchat accounts are in the format 123456_789012@hipchat.com where 123456 is the company-wide account ID and 789012 is your user account ID.

Fix nick display by setting nick_source:

account hipchat set nick_source full_name


Groupchats require you to have a "nick" set to your real name (Givenname Surname), otherwise you'll get an error on /join ("not-acceptable: Please use the nickname...")

Additionally, the channel names are in the format #123456_chat_name where 123456 is the company-wide account ID.

The best way to get this working is to avoid using the usual "invite" method of joining channels and add the channels manually before you join them.

chat add hipchat 123456_chat_name@conf.hipchat.com #channel_name
channel #channel_name set nick 'Givenname Surname'

Note that you can't rename channels - you have to remove and re-add them.


Do @mention_name instead of username:. Otherwise people won't notice your messages are addressed to them. A great feature.

This mention_name comes from <item mention_name="..."> in the roster. This value isn't parsed by bitlbee, so the only way to get it is enabling xmlconsole or using one of the official clients.

"Message from unknown participant" when joining channel

Since the server sends wrong JIDs for the "from" field (123456_chat_name@conf.hipchat.com/real name here), all you can do is using client scripts to fix this up. If you write something to do this, add it here.

Using the trigger.pl script from Wouter Coekaerts (download here), you can add the following trigger to replace "Message from unknown participant " with a blank string to hide it:

/TRIGGER ADD -all -nocase -regexp '^Message from unknown participant ' -replace ''

For weechat:

/filter add hipchat_unknown_participant * nick_root ^Message from unknown participant  

For emacs erc:

(defun my-reformat-jabber-backlog ()
    (goto-char (point-min))
    (if (looking-at
         "^<root> Message from unknown participant Your Name:")
        (replace-match "<yournick>"))))
(add-hook 'erc-insert-modify-hook 'my-reformat-jabber-backlog)


If you want to figure out something, you can try enabling the XMPP xmlconsole to your contacts. Good luck with that.

BitlBee Wiki: HowtoHipchat (last edited 2018-08-04 05:58:56 by dx)