bitlbee / bitlbee-facebook Goto Github PK
View Code? Open in Web Editor NEWFacebook protocol plugin for BitlBee
License: GNU General Public License v2.0
Facebook protocol plugin for BitlBee
License: GNU General Public License v2.0
I get the following error during compilation on a FreeBSD system:
$ ./autogen.sh
-----------8<----------------
checking whether the cc linker (/usr/bin/ld) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... freebsd10.1 ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether make supports nested variables... (cached) yes
checking for cc option to accept ISO C99... none needed
./configure: 12102: Syntax error: word unexpected (expecting ")")
Is it possible to lower the glib2 requirement from 2.32.0 to 2.28.8, please? This would allow to build bitlbee-facebook for RHEL/CentOS 6.
Every time I receive a message and bitlbee-facebook is on, a message-read notification is sent to the Facebook server and therefore:
I don't know if it's a common issue, a design flaw in the API, or if it's some misconfiguration on my side.
Sometimes a message is displayed twice. Looks like it is like if it was received twice (don't know what's happening behind).
It happens rarely enough for it not to be too constraining but I just wanted to report it. ^.^
When I try to connect using login and password I use for logging-in via the browser, e.g. something like
account add facebook mcepl somethingverysecret
account facebook on
I get incorrect login or password error (password is copied from the browser via clipboard, so it should be OK). What's wrong?
While /topic works to change the topic from bitlbee, it would be nice to be notified in bitlbee when the topic is changed by a different client. If we don't change the topic ourselves, it stays the same whatever happens to it in the server.
I didn't notice there was any issue created for this "bug" and I don't know does it even have anything to do with this module, or is there some sort of new feature in Facebook API or something, but here goes:
A while ago my iPhone stopped giving me a sound/vibration notifications for new facebook messages. I've tried every possible setting in my iPhone and reinstalled Messenger, with no luck.
I've noticed that when I turn off my bitlbee-facebook account facebook off
I do get notifications on my phone as usual and when my bitlbee-facebook is online, I only get onscreen banner notifications, without any sound or vibrate. Even away messages make no difference.
Any idea what should be done to get the notifications work as they should?
I have Messenger version 26.0 and iOS 8.4 (12H4086d) and bitlbee Version: 3.2.2-2+b1, bitlbee-common Version: 3.2.2-2, bitlbee-facebook commit: ea5d6af.
Within 3 hours, with about 200 lines sent from bitlbee-facebook, there are about 15-20 not sent correctly (and sometime I don't get some messages too). I don't know how nor why, there are no error/disconnection on status the console.
I recently upgraded to Debian package version 20151113~f2ca48a~16
from Arch package version r54.094a11b-1
, so I think this means an upgrade from the git master branch of 2015-08-28 to the git master branch of 2015-11-13. I'm running the new version on Debian Jessie 32-bit.
Sometimes when I haven't sent a message to someone in a while, I have to send the message twice in my IRC client or it won't reach them. Then for a few minutes I can send messages once. There's no disconnections given in the status window during this period. How can I help you debug this?
Thanks, jgeboski, for a great Bitlbee plugin.
01:58 <seirl> do you autojoin a group when receiving a message yet?
01:58 <jgeboski> no
01:58 <jgeboski> I don't know how I want to do the naming for that
01:58 <jgeboski> like wtf to you name the channel?
[...]
01:59 <seirl> what you could do is do that only for the channels you already explicitely joined then leaved
02:00 <jgeboski> so, if there is already a bitlbee channel, and the user is not in it via their client, open it?
02:00 <jgeboski> assuming there is an incoming message?
02:00 <seirl> yes
02:00 <jgeboski> yeah, I could do that
02:00 <jgeboski> seems fairly sane
Can't seem to be able to build it on cygwin:
Making all in facebook
make[1]: Entering directory '/home/bgiannan/bitlbee-facebook/facebook'
CCLD facebook.la
libtool: error: can't build i686-pc-cygwin shared library unless -no-undefined is specified
Makefile:434: recipe for target 'facebook.la' failed
make[1]: *** [facebook.la] Error 1
make[1]: Leaving directory '/home/bgiannan/bitlbee-facebook/facebook'
Makefile:386: recipe for target 'all-recursive' failed
make: *** [all-recursive] Error 1
I tried feeding -no-undefined to libtool but it fails when linking.
The MQTT connection randomly drops out, and the account is forced to log back in. This leads to messages becoming lost in transit to the client.
To resolve this issue, the plugin should attempt to silently reconnect with the last sequence identifier. Using the last sequence identifier will enable the plugin to retrieving missed messages.
It is quite cumbersome being forced to type facebook
(or whatever the tag is) on fbchats
/fbcreate
/fbjoin
commands because when there is a single facebook account, it is not ambiguous.
I don't know if bitlbee API makes this possible, but if it is, that would be great!
This happens all the time.
facebook - Error: Parser: 1:0: Unexpected when seeking value
I am sure I am getting a error due to dependencies, but this is what I am getting;
Can't exec "libtoolize": No such file or directory at /usr/bin/autoreconf line 196.
Use of uninitialized value in pattern match (m//) at /usr/bin/autoreconf line 196.
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -Im4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: not using Libtool
autoreconf: running: /usr/bin/autoconf --force
configure.ac:32: error: possibly undefined macro: AC_DISABLE_STATIC
If this token and others are legitimate, please use m4_pattern_allow.
See the Autoconf documentation.
configure.ac:33: error: possibly undefined macro: AC_PROG_LIBTOOL
autoreconf: /usr/bin/autoconf failed with exit status: 1
I just reinstalled the plugin today because the jabber seems down for me. It was working about one month ago. I made a fresh install, add my account, and I cannot go further that:
19:57:19 <@root> facebook - Logging in: Connecting
19:57:19 <@root> facebook - Logging in: Requesting authentication token
19:59:19 <@root> facebook - Login error: Connection timeout
19:59:19 <@root> facebook - Logging in: Signing off..
19:59:19 <@root> facebook - Login error: Request closed
A friend has exactly the same problem as me, any idea ?
IRC protocol lets the server force a user to join a channel. bitlbee-facebook could use this feature to auto-join the channel created with the fbjoin
command.
I guess this should be optional and an autojoin
boolean setting could be added.
Hey. I'm back with a new bug!
14:38 <@root> facebook - Error: Short read
14:38 <@root> facebook - Signing off..
14:38 <@root> facebook - Reconnecting in 5 seconds..
14:38 <@root> facebook - Logging in: Connecting
14:38 <@root> facebook - Logging in: Fetching contacts
14:38 <@root> facebook - Logging in: Establishing connection
14:38 <@root> facebook - Logging in: Logged in
I'm constantly getting disconnected with this error.
I'm using the last version from master (also tried development branch).
I tried:
Hello,
I'm using bitlbee 3.2.2-2+b1 with bitlbee-facebook 0.1+20150528+master+d43bd0a+jessie on Debian Jessie.
I can connect to bitlbee just fine using "/connect localhost" in irssi. Then, I add a facebook account using "acc add facebook [email protected] myappspecificpassword", and when I use "acc facebook on", bitlbee just disconnects. When doing this while running bitlbee manually with "BITLBEE_DEBUG=1 /usr/sbin/bitlbee -nD", I'm getting the following message:
Error: Fatal signal received: 11. That's probably a bug.
Segmentation fault
I guess the problem comes from this plugin, since I've never had this problem before, but if I need to post something in bitlbee's bug tracker, let me know.
On the odd chance that it might be useful to someone, I've put together a package for CentOS (7) and Fedora (22, 23, rawhide) of this available via COPR at https://copr.fedoraproject.org/coprs/larsks/bitlbee-facebook/.
To use it:
dnf -y install 'dnf-command(copr)'
dnf -y copr enable larsks/bitlbee-facebook
dnf -y install bitlbee-facebook
Hi
I'm using weechat for IRC, bitlbee for jabber and facebook conversations. I've grouped my jabber and facebook contacts following this guide https://wiki.bitlbee.org/ManagingContactList
Everything is ok, I have my facebook contacts in &facebook. When someone is writing to me, the new private channel appears with his ID.
The problem is when sender is a stranger (not my friend on facebook) the message goes to &bitlbee main channel, instead of new private channel. It'd be great to see this conversation in the same place as the others and to be able to answer.
The sender is actually an administrator of some "fan page". Message was in my "Inbox", not in "Other".
In &bitlbee:
acc list
0 (facebook): facebook, ...
1 (jabber): jabber, ...
I don't receive messages which include plain urls.
Having a numbered release could help packaging this one for many distros. What's needed to complete this step?
I have installed the nightly repo for Debian Wheezy and updated bitlbee to 3.4.1 and then installed the bitlbee-facebook repo and installed bitlbee-facebook. I have also restarted weechat in which I run bitlbee. On reconnecting to bitlbee and trying to add a facebook account with
acc add facebook [email protected] password
I receive the response from bitlbee of "Unknown Protocol".
I've checked everything is installed and running the correct version etc. Any thoughts as to why this isn't working. Facebook.so is in /usr/lib/bitlbee.
Any hints gratefully received.
Greg
If I talk to someone using the mobile app anything I say is whispered to myself in Bitlbee, as myself. The message does not show in the chat with the person I am actually talking to, but their messages are. Is there a way to work around this issue?
I know this might be a problem since bitlbee can't handle the KICK command... Is there a workaround for that?
I am having a great deal of trouble getting this to make on archlinux (armv7h) with bitlbee 3.4.1 compiled with libpurple.
Have you tried connecting the plugin after compilation to use libpurple?
When a new friend is added via another interface (e.g the Facebook website), Bitlbee doesn't recognise them and marks their online/offline status changes with messages from root instead of adding them to the buddy list. Disabling and re-enabling the account fixes this.
Example:
2015-10-30 00:00:22 @root facebook - imcb_buddy_status() for unknown handle [facebook user id redacted]:
~/bitlbee-facebook$ ./autogen.sh
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -Im4
autoreconf: configure.ac: tracing
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
autoreconf: running: /usr/bin/autoconf --force
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
autoreconf: Leaving directory `.'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether make supports nested variables... (cached) yes
checking for gcc option to accept ISO C99... -std=gnu99
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for BITLBEE... yes
checking for GLIB... yes
checking for JSON... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating facebook/Makefile
config.status: executing depfiles commands
config.status: executing libtool commands
$ make
Making all in facebook
make[1]: Entering directory `/home/cuore/bitlbee-facebook/facebook'
GEN facebook-marshal.h
GEN facebook-marshal.c
CC facebook_la-facebook-marshal.lo
CC facebook_la-facebook.lo
CC facebook_la-facebook-api.lo
CC facebook_la-facebook-data.lo
CC facebook_la-facebook-http.lo
CC facebook_la-facebook-json.lo
CC facebook_la-facebook-mqtt.lo
CC facebook_la-facebook-thrift.lo
CC facebook_la-facebook-util.lo
CCLD facebook.la
make[1]: Leaving directory `/home/cuore/bitlbee-facebook/facebook'
make[1]: Entering directory `/home/cuore/bitlbee-facebook'
make[1]: Nothing to be done for `all-am'.
make[1]: Leaving directory `/home/cuore/bitlbee-facebook'
$ sudo make install
[sudo] password for cuore:
Making install in facebook
make[1]: Entering directory `/home/cuore/bitlbee-facebook/facebook'
make[2]: Entering directory `/home/cuore/bitlbee-facebook/facebook'
/bin/mkdir -p '/usr/local/lib/bitlbee/'
/bin/bash ../libtool --mode=install /usr/bin/install -c facebook.la '/usr/local/lib/bitlbee/'
libtool: install: /usr/bin/install -c .libs/facebook.so /usr/local/lib/bitlbee/facebook.so
libtool: install: /usr/bin/install -c .libs/facebook.lai /usr/local/lib/bitlbee/facebook.la
libtool: install: warning: remember to run `libtool --finish /usr/local/lib/bitlbee/'
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/cuore/bitlbee-facebook/facebook'
make[1]: Leaving directory `/home/cuore/bitlbee-facebook/facebook'
make[1]: Entering directory `/home/cuore/bitlbee-facebook'
make[2]: Entering directory `/home/cuore/bitlbee-facebook'
make[2]: Nothing to be done for `install-exec-am'.
make[2]: Nothing to be done for `install-data-am'.
make[2]: Leaving directory `/home/cuore/bitlbee-facebook'
make[1]: Leaving directory `/home/cuore/bitlbee-facebook'
on irssi
/connect im.bitlbee.org
account add facebook [email protected] password
23:47 <@root> Unknown protocol
I thought there as a bug until I realized I was writing the full channel name (#foobar
) instead of foobar
. This is quite misleading as IRC channels are always sharp prefixed.
I tried to build it and had to install following packages on debian stretch/sid:
About every three hours, I end up with "Error: Short read" errors that cause a disconnect. This causes any open chats I have open to be closed and then after reconnecting the chat is closed so any messages received during that time are lost without logging into the web interface.
Because of the frequency of disconnects and the issues that come with them, this amazing feature becomes pretty much unusable. :(
This /might/ be related to #2 but I'm not sure.
I've been seeing a whole lot of:
12:51 <@root> facebook - Login error: Failed to read fixed header
It starts around noon PST today, and hasn't worked since.
I received a pair of images that were rendered like this in irssi:
<[fb]kosti> <img id="1">
<[fb]kosti> <img id="2">
When I logged to the website, it was rendered correctly.
I'd expect bitlbee-facebook
to convert it to a copyable/clickable URL, or at least not to cut off the rest of the HTML.
Pretty much everything has been implemented as of 53cedfa. Please open new issues.
My os: Freebsd
Installing from ports: /usr/ports/irc/bitlbee
Downloaded with git and running ./autogen.sh
i get this at the end
checking for BITLBEE... no
configure: error: Package requirements (bitlbee >= 3.4) were not met:
Package bitlbee was not found in the pkg-config search path.
Perhaps you should add the directory containing `bitlbee.pc'
to the PKG_CONFIG_PATH environment variable
Package 'bitlbee', required by 'world', not found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables BITLBEE_CFLAGS
and BITLBEE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
But im sure my package is 3.4.1 running, installed and working
The same with bitlbee-steam
System: OS X 10.11.2, Apple LLVM v7.0.2 compiler
I was able to compile bitlbee 3.4.1 and bitlbee-facebook, but when I try to log into my account I get as far as "Parsing JSON:" before I see this:
bitlbee(45248,0x7fff7b553000) malloc: *** error for object 0x7fef33800c60: pointer being freed was not allocated
*** set a breakpoint in malloc_error_break to debug
Abort trap: 6
Here is the lldb output:
* thread #1: tid = 0x933ee5, 0x00007fff98d0c002 libsystem_kernel.dylib`__pthread_kill + 10, queue = 'com.apple.main-thread', stop reason = signal SIGABRT
frame #0: 0x00007fff98d0c002 libsystem_kernel.dylib`__pthread_kill + 10
libsystem_kernel.dylib`__pthread_kill:
-> 0x7fff98d0c002 <+10>: jae 0x7fff98d0c00c ; <+20>
0x7fff98d0c004 <+12>: movq %rax, %rdi
0x7fff98d0c007 <+15>: jmp 0x7fff98d06bdd ; cerror_nocancel
0x7fff98d0c00c <+20>: retq
When I have a query/chat opened with a friend and I write in the mobile app (not tested the web-chat) all my messages show up as a query with myself in bitlbee.
Connected with irssi and using the deb package from your repo: 20151113f2ca48a16
Hope you understand what I mean :)
(Thanks for this excellent piece of software, so nice not to be able to use a proper client)
I hadn't used bitlbee's groupchat feature and wasn't sure how to get back into a groupchat after leaving it; just rerunning the fbjoin
command works, but has the downside that it generates a fresh group channel in bitlbee every single time. The correct solution is to run /join #channelname
to rejoin.
To avoid confusion of this sort, I suggest that on attempting to fbjoin
a chat, bitlbee-facebook should first check whether that chat's already been joined, and if so, it should either
/join
the existing channel, as though the user had entered the correct command in the first place, orfbjoin
operation and produce an error message like "You're already in that groupchat - try /join #nameofchannel".Fails to log in, as follows:
account facebook on
<@root> facebook - Logging in: Connecting
<@root> facebook - Logging in: Requesting authentication token
<@root> facebook - Logging in: Authentication finished
<@root> facebook - Logging in: Signing off..
<@root> facebook - Logging in: Connecting
<@root> facebook - Logging in: Fetching contacts
<@root> facebook - Logging in: Establishing connection
<@root> facebook - Login error: Failed to obtain SequenceID
<@root> facebook - Logging in: Signing off..
<@root> facebook - Logging in: Reconnecting in 5 seconds..
bitlbee 3.4.1, bitlbee-facebook f55536c
(will take a bit of time to get debug logs...)
I am using bitlbee + bitlbee-facebook-git on Arch Linux, and I am having this cryptic "core dump" errors. I believe it is being caused by the facebook plugin, because it works nice if I don't use it. Any hints how I could try to debug this?... Here is my log showing the dump messages and pretty much nothing else.
Jun 01 14:40:34 artax systemd[1]: Started BitlBee IRC/IM gateway.
Jun 01 14:40:34 artax systemd[1]: Starting BitlBee IRC/IM gateway...
Jun 01 14:40:34 artax bitlbee[5328]: Warning: BitlBee is running with root privileges. Why?
Jun 01 14:40:34 artax bitlbee[5328]: BitlBee is running with root privileges. Why?
Jun 01 14:40:40 artax systemd-coredump[5338]: Process 5337 (bitlbee) of user 0 dumped core.
Jun 01 14:41:04 artax systemd[1]: Stopping BitlBee IRC/IM gateway...
Jun 01 14:41:04 artax systemd[1]: Stopped BitlBee IRC/IM gateway.
Jun 01 14:42:20 artax systemd[1]: Started BitlBee IRC/IM gateway.
Jun 01 14:42:20 artax systemd[1]: Starting BitlBee IRC/IM gateway...
Jun 01 14:42:20 artax bitlbee[5422]: Warning: BitlBee is running with root privileges. Why?
Jun 01 14:42:20 artax bitlbee[5422]: BitlBee is running with root privileges. Why?
Jun 01 14:46:35 artax systemd-coredump[5578]: Process 5484 (bitlbee) of user 0 dumped core.
Jun 01 16:11:36 artax systemd-coredump[17391]: Process 12578 (bitlbee) of user 0 dumped core.
Whenever I try to connect to Facebook:
01:32:18 <@malc> account facebook on
01:32:19 <@root> facebook - Logging in: Authenticating
01:32:20 <@root> facebook - Logging in: Fetching contacts
01:32:23 <@root> facebook - Logging in: Connecting
01:34:18 <@root> facebook - Login error: Connection timeout
01:34:18 <@root> facebook - Logging in: Signing off..
01:34:18 <@root> facebook - Logging in: Reconnecting in 45 seconds..
The debug log suggests that it's fetched my contacts list etc., but then hangs indefinitely before completing the connection.
Any clues?
I'm getting "kicked" from a group chat all the time and have to rejoin
Could this be related to #28 ?
The errors I see in &bitlbee:
21:20 @root facebook - Error: Failed to read fixed header
21:20 @root facebook - Signing off..
21:20 -!- Netsplit bitlbee.localhost <-> redacted quits: redacted names (+25 more, use /NETSPLIT to show all of them)
21:20 @root facebook - Error: Failed to write data
21:20 @root facebook - Reconnecting in 5 seconds..
21:20 @root facebook - Logging in: Fetching contacts
21:20 @root facebook - Logging in: Connecting
I prefer not to compile my own software. Do you have any plan of contributing this back to the bitlbee project or do distro packaging?
Hi,
I just noticed this awesome plugin, but I have an issue.
I did the following:
root@tunkkaus:~# git clone https://github.com/jgeboski/bitlbee-facebook.git
root@tunkkaus:~# cd bitlbee-facebook/
root@tunkkaus:~/bitlbee-facebook# ./autogen.sh
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force
aclocal: warning: couldn't open directory 'm4': No such file or directory
autoreconf: configure.ac: tracing
autoreconf: configure.ac: creating directory config
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `config'.
libtoolize: copying file `config/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
libtoolize: Consider adding `-I m4' to ACLOCAL_AMFLAGS in Makefile.am.
autoreconf: running: /usr/bin/autoconf --force
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:29: installing 'config/compile'
configure.ac:33: installing 'config/config.guess'
configure.ac:33: installing 'config/config.sub'
configure.ac:27: installing 'config/install-sh'
configure.ac:27: installing 'config/missing'
Makefile.am: installing './INSTALL'
facebook/Makefile.am: installing 'config/depcomp'
autoreconf: Leaving directory `.'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... no
checking for mawk... mawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether make supports nested variables... (cached) yes
checking for gcc option to accept ISO C99... -std=gnu99
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for GLIB... yes
checking for BITLBEE... yes
checking for ZLIB... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating facebook/Makefile
config.status: executing depfiles commands
config.status: executing libtool commands
root@tunkkaus:~/bitlbee-facebook# make
Making all in facebook
make[1]: Entering directory '/root/bitlbee-facebook/facebook'
CC facebook_la-facebook.lo
CC facebook_la-facebook-api.lo
CC facebook_la-facebook-http.lo
CC facebook_la-facebook-json.lo
CC facebook_la-facebook-mqtt.lo
CC facebook_la-facebook-thrift.lo
CC facebook_la-facebook-util.lo
CCLD facebook.la
make[1]: Leaving directory '/root/bitlbee-facebook/facebook'
make[1]: Entering directory '/root/bitlbee-facebook'
make[1]: Nothing to be done for 'all-am'.
make[1]: Leaving directory '/root/bitlbee-facebook'
root@tunkkaus:~/bitlbee-facebook# make install
Making install in facebook
make[1]: Entering directory '/root/bitlbee-facebook/facebook'
make[2]: Entering directory '/root/bitlbee-facebook/facebook'
/bin/mkdir -p '/usr/lib/bitlbee/'
/bin/bash ../libtool --mode=install /usr/bin/install -c facebook.la '/usr/lib/bitlbee/'
libtool: install: /usr/bin/install -c .libs/facebook.so /usr/lib/bitlbee/facebook.so
libtool: install: /usr/bin/install -c .libs/facebook.lai /usr/lib/bitlbee/facebook.la
libtool: install: warning: remember to run `libtool --finish /usr/lib/bitlbee/'
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/root/bitlbee-facebook/facebook'
make[1]: Leaving directory '/root/bitlbee-facebook/facebook'
make[1]: Entering directory '/root/bitlbee-facebook'
make[2]: Entering directory '/root/bitlbee-facebook'
make[2]: Nothing to be done for 'install-exec-am'.
make[2]: Nothing to be done for 'install-data-am'.
make[2]: Leaving directory '/root/bitlbee-facebook'
make[1]: Leaving directory '/root/bitlbee-facebook'
root@tunkkaus:~/bitlbee-facebook# /etc/init.d/bitlbee restart
Restarting BitlBee IRC/IM gateway: bitlbee.
And in irssi disconnected old Bitlbee connection, reconnected, created App password in Facebook as you adviced and did the following in &bitlbee channel:
[03/03 12:15:21] <@Kirbo> account 1 del
[03/03 12:15:21] <@root> Account deleted
[03/03 12:15:37] <@Kirbo> account add facebook <user here> <password here>
[03/03 12:15:37] <@root> Account successfully added with tag facebook
[03/03 12:15:49] <@Kirbo> account 2 on
[03/03 12:15:49] <@root> facebook - Logging in: Connecting
[03/03 12:15:49] <@root> facebook - Logging in: Requesting authentication token
[03/03 12:15:51] <@root> facebook - Logging in: Authentication finished
[03/03 12:15:51] <@root> facebook - Logging in: Signing off..
[03/03 12:15:51] <@root> facebook - Logging in: Connecting
[03/03 12:15:51] <@root> facebook - Logging in: Fetching contacts
[03/03 12:15:55] <@root> facebook - Logging in: Establishing connection
[03/03 12:15:56] ùíù Lots [<id here>@facebook] has joined &bitlbee
[03/03 12:15:56] ùíù Of [<id here>@facebook] has joined &bitlbee
[03/03 12:15:56] ùíù Friends [<id here>@facebook] has joined &bitlbee
[03/03 12:15:56] ùíù Joining [<id here>@facebook] has joined &bitlbee
[03/03 12:15:56] ùíù In [<id here>@facebook] has joined &bitlbee
I can see all my online Facebook friends and I am able to send messages to them, but I'm not receiving any of their messages.
root@tunkkaus:~/bitlbee-facebook# aptitude show bitlbee
Package: bitlbee
State: installed
Automatically installed: no
Version: 3.2.2-2+b1
Priority: optional
Section: net
Maintainer: Wilmer van der Gaast <[email protected]>
Architecture: amd64
Uncompressed Size: 577 k
Depends: libc6 (>= 2.15), libevent-2.0-5 (>= 2.0.10-stable), libgcrypt20 (>= 1.6.0), libglib2.0-0 (>= 2.24.0), libgnutls-deb0-28 (>= 3.3.0), debianutils (>= 1.16), bitlbee-common (= 3.2.2-2)
Conflicts: bitlbee-libpurple
Replaces: bitlbee-libpurple
Description: An IRC to other chat networks gateway (default version)
This program can be used as an IRC server which forwards everything you say to people on other chat networks: Jabber (which includes Google Talk and Facebook Chat), ICQ, AIM, MSN, Yahoo! and Twitter/Identica/Status.net.
Homepage: http://www.bitlbee.org/
Tags: implemented-in::c, interface::daemon, network::server, protocol::ipv6, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::ssl, protocol::yahoo-messenger, role::program, use::chatting,
use::converting, use::proxying, works-with::im
root@tunkkaus:~/bitlbee-facebook# aptitude show bitlbee-common
Package: bitlbee-common
State: installed
Automatically installed: yes
Version: 3.2.2-2
Priority: optional
Section: net
Maintainer: Wilmer van der Gaast <[email protected]>
Architecture: all
Uncompressed Size: 370 k
Depends: debconf (>= 0.5) | debconf-2.0, net-tools, adduser
Replaces: bitlbee
Description: An IRC to other chat networks gateway (common files/docs)
This program can be used as an IRC server which forwards everything you say to people on other chat networks: Jabber (which includes Google Talk and Facebook Chat), ICQ, AIM, MSN, Yahoo! and Twitter/Identica/Status.net.
This package contains common files (mostly documentation) for bitlbee and bitlbee-libpurple.
Homepage: http://www.bitlbee.org/
Tags: role::app-data
root@tunkkaus:~/bitlbee-facebook# aptitude show bitlbee-dev
Package: bitlbee-dev
State: installed
Automatically installed: no
Version: 3.2.2-2
Priority: optional
Section: net
Maintainer: Wilmer van der Gaast <[email protected]>
Architecture: all
Uncompressed Size: 143 k
Depends: bitlbee (>= 3.2.2-2), bitlbee (< 3.2.2-2.1~), bitlbee-common (= 3.2.2-2)
Description: An IRC to other chat networks gateway (dev files)
This program can be used as an IRC server which forwards everything you say to people on other chat networks: Jabber (which includes Google Talk and Facebook Chat), ICQ, AIM, MSN, Yahoo! and Twitter/Identica/Status.net.
This package holds development stuff for compiling plug-ins.
Homepage: http://www.bitlbee.org/
Tags: devel::lang:c, devel::library, implemented-in::c, protocol::irc, protocol::jabber, protocol::msn-messenger, protocol::oscar, protocol::yahoo-messenger, role::devel-lib, use::chatting, works-with::im
root@tunkkaus:~/bitlbee-facebook# cat /etc/*-release
PRETTY_NAME="Debian GNU/Linux 8 (jessie)"
NAME="Debian GNU/Linux"
VERSION_ID="8"
VERSION="8 (jessie)"
ID=debian
HOME_URL="http://www.debian.org/"
SUPPORT_URL="http://www.debian.org/support/"
BUG_REPORT_URL="https://bugs.debian.org/"
root@tunkkaus:~/bitlbee-facebook# cat /proc/version
Linux version 3.16.0-4-amd64 ([email protected]) (gcc version 4.8.3 (Debian 4.8.3-16) ) #1 SMP Debian 3.16.7-ckt2-1 (2014-12-08)
What's the problem/what am I doing wrong? What needs to be done?
I am afraid 8253935 broke something:
matej@mitmanek: bitlbee-facebook (development %)$ make
cd . && /bin/sh /home/matej/repos/bitlbee-facebook/config/missing automake-1.13 --gnu
configure.ac:25: error: required directory ./build-aux does not exist
configure.ac:30: error: required file 'build-aux/compile' not found
configure.ac:30: 'automake --add-missing' can install 'compile'
configure.ac:33: error: required file 'build-aux/config.guess' not found
configure.ac:33: 'automake --add-missing' can install 'config.guess'
configure.ac:33: error: required file 'build-aux/config.sub' not found
configure.ac:33: 'automake --add-missing' can install 'config.sub'
configure.ac:27: error: required file 'build-aux/install-sh' not found
configure.ac:27: 'automake --add-missing' can install 'install-sh'
configure.ac:33: error: required file 'build-aux/ltmain.sh' not found
configure.ac:27: error: required file 'build-aux/missing' not found
configure.ac:27: 'automake --add-missing' can install 'missing'
facebook/Makefile.am: error: required file 'build-aux/depcomp' not found
facebook/Makefile.am: 'automake --add-missing' can install 'depcomp'
make: *** [Makefile.in] Error 1
matej@mitmanek: bitlbee-facebook (development %)$
(yes, I did make clean
and ./configure
)
I cloned the bitlbee-facebook repo, went to do ./autogen.sh
and get this output:
autoreconf: Entering directory `.'
autoreconf: configure.ac: not using Gettext
autoreconf: running: aclocal --force -Im4
autoreconf: configure.ac: tracing
autoreconf: configure.ac: creating directory build-aux
autoreconf: running: libtoolize --copy --force
libtoolize: putting auxiliary files in AC_CONFIG_AUX_DIR, `build-aux'.
libtoolize: copying file `build-aux/ltmain.sh'
libtoolize: putting macros in AC_CONFIG_MACRO_DIR, `m4'.
libtoolize: copying file `m4/libtool.m4'
libtoolize: copying file `m4/ltoptions.m4'
libtoolize: copying file `m4/ltsugar.m4'
libtoolize: copying file `m4/ltversion.m4'
libtoolize: copying file `m4/lt~obsolete.m4'
autoreconf: running: /usr/bin/autoconf --force
autoreconf: configure.ac: not using Autoheader
autoreconf: running: automake --add-missing --copy --force-missing
configure.ac:29: installing 'build-aux/compile'
configure.ac:33: installing 'build-aux/config.guess'
configure.ac:33: installing 'build-aux/config.sub'
configure.ac:27: installing 'build-aux/install-sh'
configure.ac:27: installing 'build-aux/missing'
Makefile.am: installing './INSTALL'
facebook/Makefile.am: installing 'build-aux/depcomp'
autoreconf: Leaving directory `.'
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... /bin/mkdir -p
checking for gawk... gawk
checking whether make sets $(MAKE)... yes
checking whether make supports nested variables... yes
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables...
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether gcc understands -c and -o together... yes
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking build system type... x86_64-unknown-linux-gnu
checking host system type... x86_64-unknown-linux-gnu
checking how to print strings... printf
checking for a sed that does not truncate output... /bin/sed
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for fgrep... /bin/grep -F
checking for ld used by gcc... /usr/bin/ld
checking if the linker (/usr/bin/ld) is GNU ld... yes
checking for BSD- or MS-compatible name lister (nm)... /usr/bin/nm -B
checking the name lister (/usr/bin/nm -B) interface... BSD nm
checking whether ln -s works... yes
checking the maximum length of command line arguments... 1572864
checking whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
checking how to convert x86_64-unknown-linux-gnu file names to x86_64-unknown-linux-gnu format... func_convert_file_noop
checking how to convert x86_64-unknown-linux-gnu file names to toolchain format... func_convert_file_noop
checking for /usr/bin/ld option to reload object files... -r
checking for objdump... objdump
checking how to recognize dependent libraries... pass_all
checking for dlltool... no
checking how to associate runtime and link libraries... printf %s\n
checking for ar... ar
checking for archiver @FILE support... @
checking for strip... strip
checking for ranlib... ranlib
checking command to parse /usr/bin/nm -B output from gcc object... ok
checking for sysroot... no
checking for mt... mt
checking if mt is a manifest tool... no
checking how to run the C preprocessor... gcc -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for dlfcn.h... yes
checking for objdir... .libs
checking if gcc supports -fno-rtti -fno-exceptions... no
checking for gcc option to produce PIC... -fPIC -DPIC
checking if gcc PIC flag -fPIC -DPIC works... yes
checking if gcc static flag -static works... yes
checking if gcc supports -c -o file.o... yes
checking if gcc supports -c -o file.o... (cached) yes
checking whether the gcc linker (/usr/bin/ld -m elf_x86_64) supports shared libraries... yes
checking whether -lc should be explicitly linked in... no
checking dynamic linker characteristics... GNU/Linux ld.so
checking how to hardcode library paths into programs... immediate
checking whether stripping libraries is possible... yes
checking if libtool supports shared libraries... yes
checking whether to build shared libraries... yes
checking whether to build static libraries... no
checking whether make supports nested variables... (cached) yes
checking for gcc option to accept ISO C99... none needed
checking for pkg-config... /usr/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for BITLBEE... no
configure: error: Package requirements (bitlbee >= 3.4) were not met:
No package 'bitlbee' found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables BITLBEE_CFLAGS
and BITLBEE_LIBS to avoid the need to call pkg-config.
See the pkg-config man page for more details.
It seems as though bitlbee can't be found...even though I have it installed and use it on a daily basis.
Bitlbee is installed from the ubuntu repositories. bitlbee -V
outputs as follows:
BitlBee 3.4.1-1
API version 030401
also(this might help):
$ which bitlbee
/usr/sbin/bitlbee
$ whereis bitlbee
bitlbee: /usr/sbin/bitlbee /usr/lib/bitlbee /etc/bitlbee /usr/share/bitlbee /usr/share/man/man8/bitlbee.8.gz
I accepted a friend request on Facebook's website while connected via Bitlbee. That person then tried to send me a message. I did not receive the message in my IRC client, but I did see several instances of this in the control channel at that time:
13:51 <@root> facebook - imcb_buddy_status() for unknown handle [redacted]:
13:51 <@root> flags = 1, state = NULL, message = NULL
Having Bitlbee disconnect and reconnect to Facebook seems to have caused it to notice that person, fixing the issue.
Didn't know which issue this would be related to, so created a new one. Close this issue if needed.
I updated to "development" branch, since I noticed there were some fixes for #9, and now my bitlbee-facebook is pretty much as unstable as it can be. Some debug:
[09/03 22:28:35] ùíù Netsplit domain.name <-> email-account quits: friend1, friend2, friend3, friend4, friend5, ... (+11 more, use /NETSPLIT to show all of them)
[09/03 22:28:35] <@root> facebook - Reconnecting in 5 seconds..
[09/03 22:28:40] <@root> facebook - Logging in: Connecting
[09/03 22:28:40] <@root> facebook - Logging in: Fetching contacts
[09/03 22:28:43] <@root> facebook - Logging in: Establishing connection
[09/03 22:28:45] <@root> facebook - Logging in: Logged in
[09/03 22:28:45] ùíù Netsplit over, joins: friend1, friend2, friend3, friend4, friend5, ... (+11 more)
[09/03 22:28:45] ùíù friend [id@facebook] has joined &bitlbee
[09/03 22:28:48] ùíù Netsplit over, joins: friend1, friend2, friend3
[09/03 22:29:42] <@root> facebook - Error: ERROR_QUEUE_NOT_FOUND
[09/03 22:29:42] <@root> facebook - Signing off..
[09/03 22:29:42] ùíù Netsplit domain.name <-> email-account quits: friend1, friend2, friend3, friend4, friend5, ... (+11 more, use /NETSPLIT to show all of them)
[09/03 22:29:42] <@root> facebook - Reconnecting in 5 seconds..
[09/03 22:29:47] <@root> facebook - Logging in: Connecting
[09/03 22:29:47] <@root> facebook - Logging in: Fetching contacts
[09/03 22:29:51] <@root> facebook - Logging in: Establishing connection
[09/03 22:29:53] <@root> facebook - Logging in: Logged in
[09/03 22:29:53] ùíù Netsplit over, joins: friend1, friend2, friend3, friend4, friend5, ... (+11 more)
[09/03 22:29:53] ùíù friend [id@facebook] has joined &bitlbee
[09/03 22:29:59] ùíù Netsplit over, joins: friend1, friend2, friend3, friend4
[09/03 22:30:12] <@root> facebook - Error: ERROR_QUEUE_NOT_FOUND
[09/03 22:30:12] <@root> facebook - Signing off..
[09/03 22:30:12] ùíù Netsplit domain.name <-> email-account quits: friend1, friend2, friend3, friend4, friend5, ... (+11 more, use /NETSPLIT to show all of them)
[09/03 22:30:12] <@root> facebook - Reconnecting in 5 seconds..
[09/03 22:30:17] <@root> facebook - Logging in: Connecting
[09/03 22:30:17] <@root> facebook - Logging in: Fetching contacts
[09/03 22:30:21] <@root> facebook - Logging in: Establishing connection
[09/03 22:30:22] <@root> facebook - Logging in: Logged in
[09/03 22:30:23] ùíù Netsplit over, joins: friend1, friend2
[09/03 22:30:23] ùíù friend [id@facebook] has joined &bitlbee
As zlib You can even built in to the freebsd system.
I even tried to install it from official website, no luck
checking for gcc option to accept ISO C99... -std=gnu99
checking for pkg-config... /usr/local/bin/pkg-config
checking pkg-config is at least version 0.9.0... yes
checking for BITLBEE... yes
checking for GLIB... yes
checking for JSON... yes
checking for ZLIB... no
configure: error: Package requirements (zlib) were not met:
Package zlib was not found in the pkg-config search path.
Perhaps you should add the directory containing `zlib.pc'
to the PKG_CONFIG_PATH environment variable
Package 'zlib', required by 'world', not found
Consider adjusting the PKG_CONFIG_PATH environment variable if you
installed software in a non-standard prefix.
Alternatively, you may set the environment variables ZLIB_CFLAGS
and ZLIB_LIBS to avoid the need to call pkg-config.
I have a last verstion of bitlbee
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.