Go to file
Pragmatic Software 747392e23a updated factoids database; !help with arguments now displays link to command ala !h 2011-01-25 23:52:55 +00:00
PBot updated factoids database; !help with arguments now displays link to command ala !h 2011-01-25 23:52:55 +00:00
build build: updated update-version.pl to use /usr/bin/perl shebang 2011-01-22 08:33:16 +00:00
config Updated BotAdmins to use DualIndexHashObject 2010-08-15 08:25:35 +00:00
data updated factoids database; !help with arguments now displays link to command ala !h 2011-01-25 23:52:55 +00:00
modules Updated factoids; added compiler_client.pl module 2011-01-20 01:16:08 +00:00
README Added Net::IRC as PBot::IRC in order to support PONG events and possible future customisation 2011-01-22 08:35:31 +00:00
pbot.pl unban_timeouts is now a HashObject -- consequently, unban timeouts now save to and load from data file 2010-06-18 10:46:23 +00:00
pbot.sh Added Net::IRC as PBot::IRC in order to support PONG events and possible future customisation 2011-01-22 08:35:31 +00:00

README

See also: http://www.iso-9899.info/wiki/Candide
--------------------------
PBot requires Perl 5.10, especially for !cc 
--------------------------
PBot is intended for the Freenode IRC network.  As such, it has not been
tested on other networks.  Some IRC features, such as NickServ auto-join, may need adjusting.
--------------------------
The first thing you'll want to do is edit pbot.pl and change the default
settings: 

  * If you did not extract/checkout PBot into ~/pbot (where ~/pbot/PBot 
contains the PBot.pm module), you'll want to change $pbothome in pbot.pl 
to point to the directory that contains the PBot, config, data, etc directories.

  * Change the IRC settings in pbot.pl so that the bot-nick and identify password are
associated with a registered NickServ account, if you want channel auto-join to succeed.
--------------------------
Then you'll need to get several modules from CPAN.  If you do not have root access, see
http://perl.jonallen.info/writing/articles/install-perl-modules-without-root

AppConfig::Std
Data::Dumper
Getopt::Std
HTML::Entities
HTML::FormatText
HTML::Parse
IPC::Open2
LWP::Simple
LWP::UserAgent
LWP::UserAgent::WithCache
Net::Dict
SOAP::Lite
Text::Autoformat
Text::Balanced
URI::Escape
WWW::Wikipedia
XML::RSS
--------------------------
Some quick-and-dirty info on using stdin (pbot shell after running pbot.sh):

You can type in the bot's stdin to talk in channels as the bot, 
e.g. by typing 'msg #pbot2 hi' from the bot's stdin.

You can send bot commands to channel by using: ~channel command

For instance, the kick command must be run in a channel:

~#pbot2 kick somenick Example reason

The bot may be backgrounded via ^Z.
--------------------------
Coming soon to README:

* Description of each PBot module, for dev customisation.
--------------------------
Todo:

* Add SSL and port options to pbot.pl.
* Use DualIndexHashObject as base for a Registry class?