RS Bot

This project was developed in 2008, when I was 15 years old, mostly for fun. It is now deprecated, as the Jabber server is not running anymore, nor is GTalk Jabber-based anymore, and most of the online services would not work anymore to begin with. This page only exists for archival purposes.

Project summary

RS Bot was a chatting bot on Jabber, sometimes available at bot@lab.rolisoft.net.

The bot was written in C#, and its primary objective is not chatting but to provide quick access to some utilities, like dictionaries and other online tools.

Complete rewrite

This project was started back in 2008 when I was a medium-ish level C# developer. Although I could implement all the features here, I wasn't really doing it the right way.

When you sent a message to the bot, it would split it at the spaces, and pass the first element of the array to a big switch statement, which would then call the functions. And yeah, the whole bot was a huge .cs file.

In July 2010, I started rewriting the whole bot. Now every function is in a category and every category has its own namespace. Every public static function with a Command(string command) attribute is a command, like this:

At startup, the software scans its namespace for such functions. Using the Description(string description) and Parameters(params string[] parameters) attributes, it can automatically generate and provide help for the commands.

Disabled commands

There are commands which are implemented, but disabled on the live demo at bot@lab.rolisoft.net. These usually use a web service which forbids using them through bots. For example, currency exchange using xe.com and translation using webforditas.net are such services.

An interactive C# shell (similar to Mono's interactive C# shell) is also implemented, but obviously disabled in the live example. Letting users run Process.Start("rm", "-rf /"); wouldn't be a good idea. The live example runs on the rolisoft.net's server from under Mono, so rm -rf / is the correct command to run, notdel /f /s /q C:\

RoliSoft: !shuffle According to Cambridge, only the start and stop letters are necessary to let your brain interpret a word.
RS-Bot: Adccirnog to Ciamdrgbe, olny the srtat and sotp leetrts are nsecasrey to let yuor biran ipntrreet a wrod.

view can be: next - print the current and next two shows, today - print full listing, search - see below
country can be: ro, hu, cz, sk
channel is a regular expression which will be run against port.xx’s channel list

!tv search country channel | show - search for a show on a TV channel; only today and in the show’s name

Download

This software is not available for download at this time.

If you want to use the bot add bot@lab.rolisoft.net to your contact list, and when it’s online have fun with it.
Available from any Jabber network, including GTalk. You must use a HTML-capable client, because RS Bot returns some texts formatted with HTML.