пʼятниця, 12 серпня 2011 р.

Hucking Bot for Assembla

If you know Assembla, you may think it's good. I think it's good too, but its Chat tool totally sucks. It is one piece of that crap, you wonder about why it was born to this world at all - when the stuff like XMPP was available for years already. Their amazing efforts to clone Skype and GTalk functionality and frame it into the web page would deserve respect if it would at least just work. I heard they moved off XMPP in the past, I would like to know the reason why, because OpenTok they use now doesn't allow to users to connect, which means I can't connect to Assembla with iChat or anything else.

Chat has two convenient features though: it can be setup to hub every event on Assembla's space, and it is searchable. So once Dave (The Hacker at @buildabrand) discovered it was good to store conversations for sake of future generations, we had this pain of switching from Skype to Assembla and constant paste-and-copy from here to there.

It's about that time I had an idea of a bot to hang on a conversation and log everything from Skype to Assembla, and benefit from this just like IRC users do.

Today I've discovered another nice Assembla tool, called Webhook, which allows you to POST event notifications from space to any URL you want. This is the way out of the space! So I fired the IDE, got the project setup and started hacking the fucking Hucking Bot!

After few hours I had something... it's a mess... it can talk to me only... it's not configurable... and it runs in screen on an old laptop in a place far far away..., but it knows me, knows how to accept events from Assembla and send them to my GTalk account, and it knows how to work with Base64, just because I had a lot of encoding/decoding in the last weeks, and just can't stand the tools available on the web.

The picture is worth thousand words:

For XMPP I have used excellent Smack API, provided by IgniteRealtime, despite that artifacts from Maven were outdated a bit.

What else? Yay! Skype support coming soon!

UPD: it seems Skype has some very restrictive licensing for their SkypeKit product. Sad!

1 коментар: