Manual:IRC RC Bot

To create an IRC bot to display recent changes to your Wiki:

LocalSettings.php
Add the following to your local settings file:

Command
Run this command on the receiving computer:

In the above entries used in your LocalSettings.php file would be 555666.

Requirements
Requires ircii which can be downloaded from eterna.com.au. It can be found in almost all Linux distributions packaged and ready to install.

This Perl script also requires POE, which you may find was not packaged with your system. Not to worry! Very easy to install.

POE may be installed through the CPAN shell which you should find on your system.

When CPAN is first run, it will ask you a series of questions, however the defaults seemed to work fine for me. However I did have a problem with some FTP sites not having the POE file, so I went for ones in the US and they had it.

You may find that POE fails to install with a message that says cannot install unless force is used as a number of tests have failed. You might want to check the seriousness of these errors, however its possible to force via the following syntax.

Requirements

 * Twisted

The script is fully contained and thus does not require ircII.

Configuration

 * reactor.listenUDP(33333, Echo): Change the 33333 to your UDP port in LocalSettings.php
 * reactor.connectTCP("localhost", 6667, RCFactory): Change the IRC server here
 * You can change the nickname and channel in the RCBot class

Running
After configuring it you can run it using python udpserver.py.

Caveats
Currently, anyone can "hack" your bot by sending packets to the port you specify. This can be fixed with iptables.

However, in the long run, a more complex bot should be written to allow for restrictions and perhaps some more stuff.

Socat
Instead of the Perl or Python script, you can use socat UDP4-LISTEN:33333,fork STDOUT. This, however, is very resource-heavy.