Skip to main content

Posts

Showing posts from August, 2005

IE Se7en

Leaving aside the lack of CSS stuff which I know is coming in the next beta, IE 7 is still just lame.

There are many things I dislike about it but the thing that offends me most is the total disregard for UI standards that has been employed in what will (tragically) become the most used application in Windows.

The prime example is that Microsoft have taken the single most annoying "feature" they introduced to Windows - the ability to tear off the menu bar and move it and taken it to the next level.

They have moved the menu bar below the tabs, and then just to spit in your eye a little more, they have reverted to it being non movable, so you can't even put it back where it belongs.

Rubbish.

Bonjour iChat's use of XMPP (Jabber)

I'd been meaning to do this for a while, but prodding from various people in comments and email has prompted me to actually start.

This post will document how iChat makes use of the XMPP protocol for its local Rendezvous/Bonjour/Zeroconf/whatever messaging. It is by no means complete, and based purely on my observations while trying to make the iChat plugin for Miranda.

If you have any corrections or want to fill in one of the many gaps, then please add comment here and I'll get it up to date.

Introduction

iChat is in most respects a pretty standard jabber client. You should be able to talk to it very quickly by modifying any existing Jabber library and building in the Zeroconf stuff. For example I modified the Jabber plugin for Miranda. There is absolutely no need to start from scratch.

Just to be clear, I personally use the Apple Bonjour SDK in C for Windows, but any Zeroconf library will do. In my Zeroconf examples I refer to the Apple SDK functions here and there, it's left…