aboutsummaryrefslogtreecommitdiffstats
path: root/README
blob: 6b9d960e0aee8cee8379e296df19018d77d79da0 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
The Facebook protocol plugin for bitlbee. This plugin uses the Facebook
Mobile API.

## Building and Installing

Make sure bitlbee and its headers have been installed. If bitlbee came
from the distribution's repository, it will most likely need the
development package, usually bitlbee-dev.

If bitlbee was built by hand (or alike via a script), ensure the make
target `install-dev` is invoked. This target is not called by default,
and will install the headers that are needed.

Do *not* use the source tree headers unless you know what you are
doing. This can lead to mismatched header versions, which often times
will lead to bad things.

    $ git clone https://github.com/jgeboski/bitlbee-facebook.git
    $ cd bitlbee-facebook

With a "global" (or system) bitlbee installation:

    $ ./autogen.sh
    $ make
    $ make install

Or with a "local" bitlbee installation (location: $HOME/bitlbee):

    $ export BITLBEE_CFLAGS="-I$HOME/bitlbee/include/bitlbee"
    $ export BITLBEE_LIBS=""
    $ ./autogen.sh --libdir=$HOME/bitlbee/lib
    $ make
    $ make install

## Usage

Before continuing, please note, it is recommended that you use an app
password for your Facebook account. Not only is this more secure than
leaving your password within bitlbee, but it allows the usage of two
factor authentication methods. An app password can be generated via
the security page on the Facebook website.

Getting started:

    > account add facebook <username> <password>
    > account <acc> on

Group Chats (existing chat):

    > fbchats [acc]
    > fbjoin [acc] <index> <channel>
    > /topic <message>
    > /invite <user>

Group Chats (creating chat):

    > fbcreate [acc] <user,user,...>
    > fbjoin [acc] 1 <channel>
    > /topic <message>
    > /invite <user>

## Debugging

One of the two supported environment variables can be defined to enable
debugging output. This can be used in unison with debuggers such as
GDB, which should enable easier tracing of bugs.

When posting to the issue tracker, please ensure any sensitive
information has been stripped.

Enable debugging output:

For bitlbee and the plugin:

    $ export BITLBEE_DEBUG=1
    OR
    $ BITLBEE_DEBUG=1 gdb ...

For just the plugin:

    $ export BITLBEE_DEBUG_FACEBOOK=1
    OR
    $ BITLBEE_DEBUG_FACEBOOK=1 gdb ...

Obtaining a GDB backtrace:

    $ gdb \
        -ex 'handle SIGPIPE nostop noprint pass' \
        -ex 'break g_log' -ex run -ex bt \
        --args /usr/sbin/bitlbee -Dnvc /etc/bitlbee/bitlbee.conf