I am raising my Geek Chick level a few notches this week. I have taken my 8+ year old desktop and converted it from Windows XP to Ubuntu 9.04 – essentially breathing new life into a system that hasn’t seen regular use in over 2 years. The install had a few fits and starts but I finally managed to get it to work and now its working like a brand new computer.
The entire reason I did this was because I wanted a dedicated system to host an IRC (Internet Relay Chat) bot for an IRC Channel (chat room) I have launched. A bot is necessary if you want to keep a channel in existence (if everyone in the room leaves, the channel just disappears – so you use a “bot” to sit in the channel and keep it open perpetually).
So last night I found some IRC bot scripts online (written in Ruby) and worked with them to launch my very own bot. I have not used IRC extensively for over 10 years so I’m a little rusty on all the various commands but with help from Google and the #ruby channel on freenode I managed to get the bot working. I named it “GabsBot” (I know, I know not very original!).
GabsBot is a fairly basic bot right now – it can log onto IRC, identify itself to the NickServ (for its registered nickname), join my IRC channel (##web_gurus), and send a message to ChanServ to get operator status (the operator or op status allows a user in a channel to have controls and allows you to kick and ban people, set the channel topic, among other things).
Now that I got the basics working the next thing (and I’ll be needing some help from experienced Ruby programmers on this), is to add some real functionality to the bot like:
- Channel administrative abilities (ability to give ops to specific users)
- Ability to reconnect automatically if disconnected
- Some fun and/or useful commands just because that’s the fun part of having a bot.
I have forgotten how much fun IRC can be. I shied away for over 10 years but with all the problems on Yahoo! Chat these days (the spam bots, the porn bots, the Indian/Pakistani spammers who think the only way to get clients is to flood a chat room …). This is so envigorating!