Wabber v0.1 - WPF Jabber Client
AMIM
A long time ago I tried making a MSN Messenger (/Windows Live Messenger) service client, using WPF. This was certainly fuelled when Yahoo announced their WPF client for Yahoo's IM Network. Unfortunately, my C# skills at the time certainly did not extend to making a library capable of connecting to MSNP reliably, particularly the later and more interesting versions (ie, v11+). I turned to the MSNPSharp library (which is based on DotMSN), but unfortunately I had difficulty following the logic of it (different authors between MSNPSharp and DotMSN I believe led to some inconsistencies in the code), and with no documentation, I eventually abandoned the project.

The above picture is actually 'live', connected to WLM. Sending/Receiving messages works fine, its just any other automated data that usually crashes it out. Display Pictures worked at one stage, but only from the official client, not Trillian and the like.
Introducing Wabber
Over the past few days/weeks, I was toying with making my own Twitter client like Will, and he suggested a really cool idea of using the 'instant notification' method (rather than scraping 70 times/hour) by connecting via XMPP (GTalk).

To understand the Jabber-Net library, I've sort of blown it more into a Jabber client than just a small addition to my twitter client, named Wabber. It currently only connects to Google's Gmail/GTalk server (hard coded for simplicity), so you'll need an account to get started.
Features
- Filtering contacts (ie, "Search for contact" instantly)
- Yahoo style "tiling of contacts"
- Yahoo style of "resize shows/hides details" (not shown in this version though)
To Do for vNext
- vCard decoding/processing so names are prettier, which will let me show avatars, proper names, etc.
- Simplify multiple contact logins to a single contact, rather than one for every presence (including offline!) notifications
- VoIP (via Jingle)
- Logging
- Error handling/notification of failed logins/etc
- Add/Remove contacts
- "Conversation Manager" doesn't always associate the same person
- Moving of window
- etc
Download
(Source to follow, need to add documentation, and more importantly, error handling)



