See also
Bitlbee and IRSSI¶
![Bitlbee](../_images/logo-bitlbee.png)
Occasionally I have to use a Jabber Server and therefore also a Jabber client. Usually I’m fine with the default client. That might be Empathy or Pidgin (if necessary).
With Pidgin I never got really close. It seems too much for the little job it has, too much clicke-de-click here and there. It’s probably just a prejudice. Empathy on the other hand really made me really see red. Having a conversation open with one person made it impossible to open another conversation, just because the window didn’t appear for doing that. That might also be a Gnome3 issue, but frankly: I don’t care.
I’m still running my IRSSI instance from where I stay in contact with the rest of the world. While looking for a jabber client on the command-line, I stumble about mcabber. I remember having already tested this client once, but got rid of it after a while. Not really use-able for me.
Another thing I found was Bitlbee. Bitlbee basically sets itself between another service and acts as a local IRC server and is therefore reachable via IRSSI as well.
I setup an instance on my local computer, added an account and suddenly all the contacts from the Jabber account appeared in my IRC and are reachable from there as well. How sweet is that?
Yes, it’s a bit techi and nerdy, but it’s working like a charm. I think I’ll not switch back if there aren’t any major flaws somewhere hidden…
Installation¶
$ sudo apt-get install bitlbee
Setup¶
Start the server
$ sudo /etc/init.d/bitlbee start
Connect to your IRSSI session as usual. From inside IRSSI you open another connection beside the existing ones to the now running bitblee irc server on your system:
irssi> /connect localhost
Using /connect rather than /server will keep your existing connections and not close them. So you can be connected to Bitlbee and e.g. Freenode at the same time.
Setup access on your Bitlbee server and secure it with a password.
In the control channel (&bitlbee), execute the following (do the same for all following commands):
irssi> register <password_here>
Bitlbee will associate this password with your current nick. Then, when you connect in the future, you just have to identify, either using the identify command or standard identification methods for IRC, and you will have access to your accounts.
Setup an account within Bitlbee to connect to your jabber server:
irssi> account add <protocol> <username> irssi>/OPER (Adding the password)
To set SSL (find the account number with “account list”):
irssi> account <account_num> set ssl true
To force TLS (the default is try, which falls back to plain text if not available):
irssi> account <account_num> set tls true
Save your settings
irssi> save
Example
Jabber account add jabber jt@jabber.no /OPER <password> account 0 set server jabber.no[:<portnumber>:ssl]
Depending on the jabber server, the port and the encryption used you have to alter the parameter a bit.
Fire up the account
By default, Bitlbee will connect to all accounts that have the auto_connect account property set to 1. However, to get started now, do the following:
irssi> account <accountnumber> on
Usage¶
It took me a while to figure out how I actually could leave a conversation I’ve opened or that has been opened. Basically it’s a mix between IRSSI, IRC and Bitlbee commands:
/WC => Leaving a conversation
&bitlbee> blist => listing all contact
&bitlbee> blist online => listing all online contacts
&bitlbee> set private true => opening new windows for opening contacts
&bitlbee> set strip_html true => strips HTML from clients that use it
&bitlbee> account 0 set tag <tag> => set a tag on an account
/msg <nickname> <message> => starting a conversation to <nickname>
/names => List all users in the channel.
&biltbee> account 0 set away DND => Set status to away on account 0 while leaving the other untouched.
alt-[1-0], alt-[q-o] => Switching through the channels.
/window <windownumber> => Switchting directly into a conversation.
/window move left => moving window to the left
Backup¶
You have to take a backup of the following folders:
/etc/bitlbee
/var/lib/bitlbee
You also need to take care of the permissions of these folders. Without the correct permissions the next identity $PASSWORD will be quitted with “No account available” (or something similar).