So, Facebook added their Chat application but still haven't added the promised Jabber support so that you can use it through a standard instant messaging client. (If you haven't ever used one I recommend Pidgin - you can use it to do messaging over Jabber, Google Talk (which uses Jabber), MSN, Yahoo IM, etc, etc, in a unified way without having to install hundreds of programs. There's also a Mac-specific version called Adium.)
Fortunately, Eion Robb (who did the Skype Pidgin plugin) has come to our rescue with his Facebook Chat for Pidgin. Install it and not only can you do chatting through Pidgin, but all your Facebook notifications and friend requests can be managed there too. (Jabber support would be even better because then you could chat between different systems, just like you can email between them, but this'll do for now.)
The one slight drawback is that if you have a Facebook page open at the same time, the chats still open there - you can't simply set your status offline there as then it conflicts with the Pidgin plugin. So what I've done (and at this point it becomes technical) is block the URLs that Facebook uses for the chat, so it still appears online, but only Pidgin gets the messages.
For this I've used FoxyProxy, a great Firefox plugin that lets you customise which proxy server to use for different web addresses. (Incidentally, this is sometimes useful in South Africa to get around Telkom/SAIX's transparent caching servers that send you to the same web page from different apparent client IP addresses, thus preventing login cookies from working on various sites - Sourceforge for one...)
I added a Proxy entitled Block URLs (Add URLs in here to prevent them loading) at the top of the list of proxies (giving it highest priority), as a Manual Proxy Connection to Host 0.0.0.0 Port 0 (which won't work) and set it to match the following URLs (each one as a Whitelist with Wildcards):
If you also want to make the Chat bar disappear, you can use the Addblock Plus Firefox extension (which is just fantastic for getting rid of ads and things you don't want to see on the net - I use it with the EasyList USA subscription) and add this filter rule:
Other references for disabling the Web UI (that don't take into account still using it through Pidgin):