The buildbot should be able to send status information over instant messaging protocols just like it does with IRC. AIM and Jabber are both (theoretically) implemented in Twisted.
I have a branch in which the IRC bot command/response code is factored out
into a separate mixin class. The goal is to use the same code for IM status
clients (starting with AIM/toc, since that protocol appears to be implemented
within Twisted, not that I've actually been able to make it work..). The
design calls for a number of "channels", each of which keeps separate state.
In the IRC context, there is one channel for the IRC channel as a whole
(which receives messages whenever someone uses the "buildbot: command"
convention, and broadcasts messages to the whole channel), and another
channel for each person who exchanges private messages with the buildbot
(i.e. /msg buildbot command). In the IM context, there is a separate channel
for each person who interacts with the buildbot account.
Each of these channels will have a flag to say how noisy they are: when turn
on, the IM status plugin will internally subscribe to hear about new builds
and then emit status messages whenever those events occur. There will be
commands to control this flag, like 'buildbot: noisy' and 'buildbot: quiet'.
The IM user can send an introductory message to the buildbot to ask it to
start announcing events. For some protocols, we could probably figure out
some sort of presence-triggered subscriptions, so the buildbot would watch
for you to log in, and start sending you messages as soon as it sees you.