Differences between revisions 11 and 21 (spanning 10 versions)
Revision 11 as of 2014-07-15 12:21:14
Size: 7272
Editor: dx
Comment: update some info to reflect current status (3.2.2). also link to whatsapp wiki page, and add more details in some questions
Revision 21 as of 2017-02-05 04:07:56
Size: 7130
Editor: dx
Comment: handle_unknown
Deletions are marked like this. Additions are marked like this.
Line 1: Line 1:
= FAQ (WORK IN PROGRESS!) = = FAQ =
Line 3: Line 3:
I'm going to put #bitlbee frequently asked questions here, in no particular order, based on answers given in #bitlbee. <<TableOfContents>>
Line 5: Line 5:
== How to get the bitlbee version == == General ==

=
== How to get the bitlbee version ===
Line 13: Line 15:
== Version "3.2.1+otr4-1" losing messages or crashing == === Do people still use <insert service name here>? ===
Line 15: Line 17:
Upgrade to latest bzr ([[http://code.bitlbee.org/debian/|apt repo here]]) or 3.2.2. Applies to early development versions and the ones that are currently shipped with debian testing/unstable and ubuntu trusty 14.04. Yes.
Line 17: Line 19:
See: VersionReference http://bugs.bitlbee.org/bitlbee/ticket/1109 http://bugs.bitlbee.org/bitlbee/ticket/1110 === Loop of "Trying to take over existing session" ===
Line 19: Line 21:
== Can't connect to google talk == The session takeover feature isn't particularly good, and should be avoided. Do {{{set allow_takeover off}}} and consider using a bouncer like [[http://znc.in/|ZNC]] instead if you need this.
Line 21: Line 23:
Probably a SRV resolution error, related to http://bugs.bitlbee.org/bitlbee/ticket/1098 === <root> Setting ` ' does not exist. (and similar errors) ===
Line 23: Line 25:
{{{
account jabber set server talk.google.com
}}}
You might have a OTR plugin in your irc client or bouncer, which sends a whitespace pattern (made of spaces and tabs) when it's set to "opportunistic" mode, and having that at the end of root commands confuses bitlbee. Find a way to disable it.
Line 27: Line 27:
== "help otr" gives a help message but "otr foo" says "unknown command" == (Note that the bitlbee otr plugin does the same, but only where it makes sense).
Line 29: Line 29:
The help text is always included even if you don't have the otr plugin installed. Install it.

== Skype plugin losing messages ==

See known issues section of HowtoSkype, a few workarounds there.

== jabber: Setting `oauth' does not exist. ==

You're using bitlbee-libpurple, which has a different jabber implementation without oauth. Install the normal bitlbee if you don't need any libpurple specific plugins.

As of 3.2.2 you can build bitlbee with the builtin jabber module and libpurple by running ./configure with --jabber=1 --purple=1

Tickets: http://bugs.bitlbee.org/bitlbee/ticket/1141 http://bugs.bitlbee.org/bitlbee/ticket/731

== I've rebuilt bitlbee and everything seems the same ==

Check {{{ps aux}}}, kill all old bitlbee processes. Disconnect your irc client. Ensure that you installed to the right place (the configure script installs to /usr/local by default)

== msn - Error: Session terminated by remote server (RCT) ==

RCT means reconnect. The remote server needs to restart for maintenance.

== The nick is (probably) not registered ==

Check that the permissions of the files in /var/lib/bitlbee match the user that is running the bitlbee daemon.

== twitter: Error: Could not retrieve /1.1/favorites/create.json: 404 Not Found (Sorry, that page does not exist) ==

The tweet was deleted

== `make install` throws errors about xmlto not found ==

It's building the user guide. Install asciidoc. You could also ignore the error.

== Random issues that make no sense at all and absolutely nobody understands ==

Might be selinux. If you're on a redhat distro, use their packages and init scripts, which are correctly configured. Otherwise, learn to configure it or disable it.

== <root> Setting ` ' does not exist. (and similar errors) ==

You might have a OTR plugin in your irc client or bouncer, which sends a whitespace pattern (made of spaces and tabs) when it's set to "opportunistic" mode, and having that at the end of root commands confuses bitlbee. Find a way to disable it. (Note that the bitlbee otr plugin does the same, but only where it makes sense).

== How to register a new jabber account in a server? ==

Not supported yet. You can use a client like psi or gajim one time just to do the registration step, then do the rest in bitlbee.

== How to configure bitlbee to listen on SSL/TLS? ==

Use stunnel or tls-enabled irc bouncer (e.g. [[http://znc.in/|ZNC]]) in front of it. (TODO: docs)

== How to show offline nicks in /names list ==
=== How to show offline nicks in /names list ===
Line 85: Line 35:
== Twitter shows messages from blocked users == === I restarted bitlbee and my settings didn't save ===
Line 87: Line 37:
Turns out we're supposed to get a list of blocked users and hide them on our side. (TODO: trac ticket) Some methods of restarting don't save the user settings - do "save" in the control channel to ensure they are saved. Of course, you need an account for that.
Line 89: Line 39:
== facebook: Several "FacebookUser" contacts that can't be identified == === Can I use bitlbee to connect to IRC? ===
Line 91: Line 41:
These are most likely profiles that were deleted or that blocked you. They might be included in the friends list of your facebook profile. The facebook mobile app might show an option to remove those contacts. Maybe, but don't do it. See [[IRCThroughBitlbee]]
Line 93: Line 43:
== facebook: Users join before sending messages, then quit == === Why do some people talk to me through &bitlbee? ===
Line 95: Line 45:
This is bitlbee showing exactly what the facebook xmpp server says. You might want to ignore it in your irc client. Those may be people who are not in your contact list. See `help set handle_unknown` to customize this behavior.
Line 97: Line 47:
Example /ignore for irssi (will not work for other clients) ----
Line 99: Line 49:
{{{
/ignore *!*@chat.facebook.com JOINS QUITS
}}}
== SSL / TLS ==
Line 103: Line 51:
== facebook: Other weird issues == === How to connect to the bitlbee server with SSL/TLS? ===
 
Use stunnel or tls-enabled irc bouncer (e.g. [[http://znc.in/|ZNC]]) in front of it. (TODO: docs)
Line 105: Line 55:
The fallback answer for most facebook issues is "blame their server" - it's not a real xmpp server but a gateway to their service, which doesn't have a history of being particularly stable.

(But if the issue is not here or in HowtoFacebook, ask on IRC! We might find a solution)

== twitter: Error: Stream closed (200 OK) ==

Bitlbee has to reconnect due to twitter server side maintenance. It's often harmless, but might be annoying, see the following question.

== Twitter reconnects too often, it's annoying ==

Try this:

{{{
account twitter set show_old_mentions 0
}}}

== What SSL/TLS library does bitlbee use? ==
=== What SSL/TLS library does bitlbee use? ===
Line 129: Line 63:
NSS is used by redhat based distros - RHEL, centos, fedora, etc. Affected by this bug http://bugs.bitlbee.org/bitlbee/ticket/785 - but should be okay when using the systemd scripts provided in their packages, or inetd mode. NSS is used by redhat based distros - RHEL, centos, fedora, etc.
Line 131: Line 65:
== Is there facebook groupchat support? == === Can't connect to servers that use cacert certificates such as jabber.ccc.de ===
Line 133: Line 67:
No. Groupchats aren't supported in Facebook's XMPP, so Bitlbee can't support them.

== Is there google hangouts groupchat support? ==

No. One to one chats should still work through jabber.

== Whatsapp? ==

See HowtoWhatsapp

== Telegram? ==

Probably not. http://bugs.bitlbee.org/bitlbee/ticket/1140

== Is MSN still alive? ==

Yes, and microsoft still uses the msn protocol internally. See HowtoMsn

== Facebook says that I use an application called "Rtgw_xmpp_username_password_login" ==

This probably means "Realtime gateway xmpp username/password login" and it happens when you use password based login instead of oauth. See HowtoFacebook

== OAuth failure (Unusuable response) [sic] ==

You're probably using NSS, the default ssl/tls library in redhat based distros. Workaround, start bitlbee like this:
The error looks like this:
Line 160: Line 70:
nohup bitlbee -Dn & <@root> jabber - Logging in: Converting stream to TLS
<@root> jabber - Login error: Could not connect to server
Line 163: Line 74:
Or start bitlbee using xinetd. Or use the distro provided systemd units (the fedora ones start it correctly) It affects the following ubuntu/debian releases (Newer releases are not affected)
Line 165: Line 76:
Bug http://bugs.bitlbee.org/bitlbee/ticket/785  * Debian 7 (wheezy, oldstable)
 * Ubuntu 12.04 (precise)
 * Ubuntu 14.04 (trusty)
Line 167: Line 80:
There's a fix for this issue in the fedora 22 packages. Solutions: (pick one)
Line 169: Line 82:
== twitter - Login error: Could not retrieve /friends/ids.xml: 403 Forbidden (SSL is required) ==  * Ubuntu 14.04 users can fix this by using the APT repo in http://code.bitlbee.org/debian/ which builds against gnutls28
 * Debian 7 and ubuntu 12.04 users can upgrade to a newer debian/ubuntu release
 * Install gnutls28 (possibly in backports) and rebuild bitlbee against it
 * Rebuild bitlbee with {{{./configure --ssl=nss}}} to not use gnutls at all.
 * Not recommended, but downgrading your gnutls26 package to not include the CVE-2015-7575 fix will also allow you to connect again.
Line 171: Line 88:
Upgrade to 3.2.1 (or 3.2.2) Context: The ubuntu/debian gnutls26 package [[https://bugs.launchpad.net/ubuntu/+source/gnutls26/+bug/1553819|introduced a security "fix"]] that prevents connections to servers with certificates with RSA-MD5 signatures. Cacert has that kind of signatures, and jabber.ccc.de is the most common server that uses those certificates.
Line 173: Line 90:
Note that some builds are labeled 3.2-1, this is not the same as 3.2.1 The real solution here is for cacert to stop sucking ([[http://blog.cacert.org/2016/03/successful-root-re-sign/|they are working on it]]... slowly), or to have jabber.ccc.de use a real CA like letsencrypt. Both are out of our control.
Line 175: Line 92:
== Loop of "Trying to take over existing session" == ----
Line 177: Line 94:
The session takeover feature isn't particularly good, and should be avoided. Do {{{set allow_takeover off}}} and consider using a bouncer like [[http://znc.in/|ZNC]] instead if you need this. == Compilation / installation issues ==

=== "help otr" gives a help message but "otr foo" says "unknown command" ===

The help text is always included even if you don't have the otr plugin installed. Install it.

=== I've rebuilt bitlbee and everything seems the same ===

Check {{{ps aux}}}, kill all old bitlbee processes. Disconnect your irc client. Ensure that you installed to the right place (the configure script installs to /usr/local by default)

----

== Jabber ==

=== Can't connect to google talk ===

Probably a SRV resolution error?

{{{
account jabber set server talk.google.com
}}}

=== jabber: Setting `oauth' does not exist. ===

You're using bitlbee-libpurple, which has a different jabber implementation without oauth. Install the normal bitlbee if you don't need any libpurple specific plugins.

You can build bitlbee with the builtin jabber module and libpurple by running ./configure with --jabber=1 --purple=1

=== How to register a new jabber account in a server? ===

Not supported yet. You can use a client like pidgin, psi or gajim one time just to do the registration step, then do the rest in bitlbee.

=== Is there google hangouts groupchat support? ===

Not with jabber. Try [[https://bitbucket.org/EionRobb/purple-hangouts|purple-hangouts]] or [[https://github.com/mtomwing/pickups|pickups]]

----

== Twitter ==

See also issues listed in HowtoTwitter

=== twitter: Error: Could not retrieve /1.1/favorites/create.json: 404 Not Found (Sorry, that page does not exist) ===

The tweet was deleted

=== twitter: Error: Stream closed (200 OK) ===

Bitlbee has to reconnect due to twitter server side maintenance. It's often harmless, but might be annoying, see the following question.

=== Twitter shows messages from blocked users ===

Turns out we're supposed to get a list of blocked users and hide them on our side. [[http://bugs.bitlbee.org/bitlbee/ticket/1166|Ticket]]

=== Is the "mute" feature implemented? ===

Yes, since {{{3.4.2+20160417+master+24-ga244877-git}}} (that's a few commits after 3.4.2)

=== How can i change the name of the #twitter_<username> channel? ===

It's a hack, but you can remove the "username" part of it like this

{{{
account twitter set username ""
}}}

And you get a channel named {{{#twitter_}}}. (It doesn't break because the username is irrelevant when using oauth)

----

== Development ==

=== Are there docs? ===

No. But the [[https://github.com/jgeboski/bitlbee-steam|bitlbee-steam]] plugin is wonderfully documented. Go look at that. Also, read the source, and feel free to ask any questions in #bitlbee.

=== Can I write plugins in languages other than C? ===

Maybe, check the 'parson' branch. You could also do like the skype plugin (connects to a daemon over a plain tcp+ssl connection).

----

== Other questions ==

(Add new questions here, move them later.)

=== Can I rename/remove &bitlbee? ===

You can create a new control channel with a different name, see "help channel".

Bitlbee will always join &bitlbee because you get messages there before logging in to your user. Currently there is no way to avoid this.

This is often asked as a way to workaround IRC client bugs - remember to report those to the developers!

FAQ

General

How to get the bitlbee version

/ctcp root version

The result might be in the status window, depending on irc client.

Do people still use <insert service name here>?

Yes.

Loop of "Trying to take over existing session"

The session takeover feature isn't particularly good, and should be avoided. Do set allow_takeover off and consider using a bouncer like ZNC instead if you need this.

<root> Setting ` ' does not exist. (and similar errors)

You might have a OTR plugin in your irc client or bouncer, which sends a whitespace pattern (made of spaces and tabs) when it's set to "opportunistic" mode, and having that at the end of root commands confuses bitlbee. Find a way to disable it.

(Note that the bitlbee otr plugin does the same, but only where it makes sense).

How to show offline nicks in /names list

chan &bitlbee set show_users online+,away+,offline

I restarted bitlbee and my settings didn't save

Some methods of restarting don't save the user settings - do "save" in the control channel to ensure they are saved. Of course, you need an account for that.

Can I use bitlbee to connect to IRC?

Maybe, but don't do it. See IRCThroughBitlbee

Why do some people talk to me through &bitlbee?

Those may be people who are not in your contact list. See help set handle_unknown to customize this behavior.


SSL / TLS

How to connect to the bitlbee server with SSL/TLS?

Use stunnel or tls-enabled irc bouncer (e.g. ZNC) in front of it. (TODO: docs)

What SSL/TLS library does bitlbee use?

Either gnutls, openssl, or nss, depending on compilation parameters.

GnuTLS is the most common one, most distros use it, and it's the recommended option.

OpenSSL has no detection code (will never be used unless chosen explicitly) and will show a warning about the possible GNU GPL license incompatibility when trying to compile against it. Last time i checked, only openbsd compiled bitlbee against openssl.

NSS is used by redhat based distros - RHEL, centos, fedora, etc.

Can't connect to servers that use cacert certificates such as jabber.ccc.de

The error looks like this:

<@root> jabber - Logging in: Converting stream to TLS
<@root> jabber - Login error: Could not connect to server

It affects the following ubuntu/debian releases (Newer releases are not affected)

  • Debian 7 (wheezy, oldstable)
  • Ubuntu 12.04 (precise)
  • Ubuntu 14.04 (trusty)

Solutions: (pick one)

  • Ubuntu 14.04 users can fix this by using the APT repo in http://code.bitlbee.org/debian/ which builds against gnutls28

  • Debian 7 and ubuntu 12.04 users can upgrade to a newer debian/ubuntu release
  • Install gnutls28 (possibly in backports) and rebuild bitlbee against it
  • Rebuild bitlbee with ./configure --ssl=nss to not use gnutls at all.

  • Not recommended, but downgrading your gnutls26 package to not include the CVE-2015-7575 fix will also allow you to connect again.

Context: The ubuntu/debian gnutls26 package introduced a security "fix" that prevents connections to servers with certificates with RSA-MD5 signatures. Cacert has that kind of signatures, and jabber.ccc.de is the most common server that uses those certificates.

The real solution here is for cacert to stop sucking (they are working on it... slowly), or to have jabber.ccc.de use a real CA like letsencrypt. Both are out of our control.


Compilation / installation issues

"help otr" gives a help message but "otr foo" says "unknown command"

The help text is always included even if you don't have the otr plugin installed. Install it.

I've rebuilt bitlbee and everything seems the same

Check ps aux, kill all old bitlbee processes. Disconnect your irc client. Ensure that you installed to the right place (the configure script installs to /usr/local by default)


Jabber

Can't connect to google talk

Probably a SRV resolution error?

account jabber set server talk.google.com

jabber: Setting `oauth' does not exist.

You're using bitlbee-libpurple, which has a different jabber implementation without oauth. Install the normal bitlbee if you don't need any libpurple specific plugins.

You can build bitlbee with the builtin jabber module and libpurple by running ./configure with --jabber=1 --purple=1

How to register a new jabber account in a server?

Not supported yet. You can use a client like pidgin, psi or gajim one time just to do the registration step, then do the rest in bitlbee.

Is there google hangouts groupchat support?

Not with jabber. Try purple-hangouts or pickups


Twitter

See also issues listed in HowtoTwitter

twitter: Error: Could not retrieve /1.1/favorites/create.json: 404 Not Found (Sorry, that page does not exist)

The tweet was deleted

twitter: Error: Stream closed (200 OK)

Bitlbee has to reconnect due to twitter server side maintenance. It's often harmless, but might be annoying, see the following question.

Twitter shows messages from blocked users

Turns out we're supposed to get a list of blocked users and hide them on our side. Ticket

Is the "mute" feature implemented?

Yes, since 3.4.2+20160417+master+24-ga244877-git (that's a few commits after 3.4.2)

How can i change the name of the #twitter_<username> channel?

It's a hack, but you can remove the "username" part of it like this

account twitter set username ""

And you get a channel named #twitter_. (It doesn't break because the username is irrelevant when using oauth)


Development

Are there docs?

No. But the bitlbee-steam plugin is wonderfully documented. Go look at that. Also, read the source, and feel free to ask any questions in #bitlbee.

Can I write plugins in languages other than C?

Maybe, check the 'parson' branch. You could also do like the skype plugin (connects to a daemon over a plain tcp+ssl connection).


Other questions

(Add new questions here, move them later.)

Can I rename/remove &bitlbee?

You can create a new control channel with a different name, see "help channel".

Bitlbee will always join &bitlbee because you get messages there before logging in to your user. Currently there is no way to avoid this.

This is often asked as a way to workaround IRC client bugs - remember to report those to the developers!

BitlBee Wiki: FAQ (last edited 2017-02-05 04:07:56 by dx)