How can I stop FBuntu displaying random read inbox messages?

Created by Greg A
Keywords:
Last updated by:
Greg A

If you're using the legacyInboxChecker 'plugin' then quite a few users end up with Facebook returning messages that are actually read.

This is an incredibly irritating Facebook bug. I reported a bug about it with Facebook, but they have not yet done anything about it: http://bugs.developers.facebook.net/show_bug.cgi?id=19241

This bug is actually fixed in Facebook's latest APIs, implemented in FBuntu's unifiedInboxChecker. The problem is, Facebook are only making this available to developer accounts. So until then, we need a workaround...

The first thing to do is to look at your debug.log file. You should find a line that looks something like this:
2011-09-27 17:45:38 legacyInboxChecker.py:61 DEBUG: [{u'snippet': u'http://94.188.56.9/756644597 ', u'thread_id': u'1981718745732', u'updated_time': 1311345697, u'snippet_author': 1036580026, u'subject': ''}, {u'snippet': u'It is you on the video ?)) want to see?)', u'thread_id': u'2158909489034', u'updated_time': 1311345662, u'snippet_author': 1036580026, u'subject': ''}]

The above line shows two supposedly unread threads, with thread IDs '981718745732' and '2158909489034'. These IDs are what you need for blacklisting. (Note that you may also get some threads that you *actually* haven't read. Don't blacklist these!)

In your legacyInboxChecker.py file, scroll down to around line 80. Edit the "blacklist" line, putting each of the IDs in quotes like below. (This line already exists in the file with some example data.)
blacklist = ['981718745732', '2158909489034']

You should now be all sorted. And hopefully it won't be too long until Facebook let everyone use their shiny new bug-free APIs so you don't have to jump through these hoops.