Excla.im is a jabber bot that allows you to update your twitter status very simply.

All you need to get started is a jabber account (google talk will work as well) and a twitter account. Log in with your google account to associate the two.

  • gtalk
  • jabber

Get started with the excla.im bot

More Info

About me

I am Harper Reed. I make sure that Threadless stays running. I also play computers and read all sorts of stuff. Feel free to send me an email or hit me up on the message machine. Check out my blog, follow me on twitter, or check out my homepage.

Experimental

If you would like to test out our experimental Track bot - send a IM message to exclaimtrack@appspot.com. It will allow you to track keywords in tweets in real time. Pretty awesome. Techcrunch covered it here.

Nerdy stuff

Excla.im is a jabber bot that allows you to update your twitter status very simply. All you need to get started is a jabber account (google talk will work as well) and a twitter account. Log in with your google account to associate the two.

Excla.im was built in two parts. The first was the Google App Engine app to control account information and access. The second is a python jabber bot that uses an API exposed by the GAE app.

The webapp

The GAE app is written in python and uses the django helper. It is super simple and is basically a storage container for account info. It was a breeze to develop and fun to work with. I suggest you try it out.

The bot

The Jabber bot used to be a bit more complicated. I first used the sleekxmpp library to do all the XMPP heavy lifting then used Shane Hathaway's daemon.py to help daemonize the bot (btw thanks to Anders for talking me through the dirtiness of daemonizing). This ended up being a HUGE pain in the ass - and ate up a LOT of memory. The next iteration of the bot used the awesome WOKKEL XMPP library (maintained by Ralph Meijer) on top of twisted words. The daemon was much cleaner and the bot was MUCH more stable.

To hook into twitter I use a Twitter Oauth wrapper that I released on github. It is very simple and is a LOT more secure than storing peoples passwords. Thank goodness that time is over.

I was then able to wrap this all up in a fancy little bot that on receiving a message, grabs encrypted OAuth tokens from the GAE app, sends the message to twitter's api and then chills out. Pretty sweet.

I plan to integrate the track bot (exclaimtrack@appspot.com) features, receiving your friends updates and some other tricks into the core excla.im bot. These features will roll out soon (I hope).

Awesome.