transbot: Translation Bot

Yeah, more one new poject, now using Python Programming Language. The main goal of this project is: create a translation IRC bot, that translates some English text (or the text of some user that are on the same channel).

And for it I used this Google Translate interface (to effectively translate some text to some language, that uses the Google Translate service) and the BeautifulSoup class, that parses XML or HTML (thank you guys!). As I never had made an IRC bot before, I get on the internet some base for do it; you can see them here and here.

I had the idea to made it in a funny chat on #embassyofpiracy, on irc.anonnet.org. The original idea was: A bot that can translate the last (or the N latest) message(s) from some user on the channel. There are a lot of people from all around the world, but the main language used on the channel is English. And as we want to have more and more people on the channel, some guys doesn’t understand English very well.. So…”what about a translation bot”?

And here we are. The transbot is already on version 0.1, with these functions (the character ! with some text means that it is a command):

  • !help: a basic help with all supported commands;
  • !listsupported: list all supported languages;
  • !whatis LANG_CODE: returns the language associated with the language code LANG_CODE;
  • !langcode LANGUAGE: returns the language code associated with the language LANGUAGE;
  • !translate LANG_CODE TEXT: do the translation of the English text TEXT to the language associated with LANG_CODE.

The bot will be released on GPL, but only at version 1.0. Until there, I’ll put here some code snipplets, to all interested on create your own IRC bot, or to anyone that wants to learn something about Python. Also I’ll write about transbot‘s features…

Finishing, a simple TODO list that I must to develop for the next versions:

– Generate some data structure to handle all the users of the channel, saving the last (and soon, the N latest) message of them;

– Create a function to auto translate from all languages, not only from English;

– Option to return some translated web address (URL);

– Must handle config files;

– Think about more useful functions;

– Make the bot funny (why not?? :D).

You can contact me on irc.freenode.net. I’m the user rodrigo_golive 😉