patch -p0 < Net::IRC.patch
- cd /usr/lib/perl5/WWW/Search
patch -p0 < WWW::Search::Google.patch
+
+- alternatively, move the files from patches/
+ - mv patches/Google.pm /usr/lib/perl5/WWW/Search/
+ - mv patches/Connections.pm /usr/lib/perl5/Net/IRC/
-blootbot v1.0.0RC3 (20000709)
+blootbot v1.0.0 (20000729)
-------------------------
INTRODUCTION
there would be no blootbot so all thanks to kevin for bringing infobot in
the first place.
- as of 0.99pre1, blootbot supports mysql database in the hope to
+FEATURES
+ * Additional information stored with factoids. (factinfo)
+ * Wide range of statistics for Bot, Factoids, IRC, Debian.
+ (status, factstats, ircstats, chanstats, cmdstats)
+ * Advanced topic management. (the first cool feature)
+ * Improved factoid search, allowing search by key or value.
+ * Freshmeat support (freshmeat.net)
+ * Debian Contents and Packages, search and info.
+ * ChanServ/NickServ (OPN) support.
+ * WWW-Search (eg: google for BLAH)
+ * Slashdot,Kernel and Freshmeat auto-update announcements.
+ * Units conversion (provided by external module, Units-Module)
+
+ DESIGN
+ - Modularity. Ability to disable IRC or Factoid support.
+ - Funky pseudo Module autoloader support
+ - Eleet Forker() function
+
+Improvements include:
+ * log file is not opened and closed for each line of data
+ => unblocked logging is used.
+ * seen data is not flushed for each public message on IRC
+ => caching and flushing over an interval is used.
+
+HISTORY
+ As of 0.99pre1, blootbot supports mysql database in the hope to
increase performance and to avoid borked over dbm's which occurred when
the bot crashed (??). The mysql code is far larger (or perhaps twice
as many functions) than expected even though a few functions were needed
for DBM due to lack of table deficiencies.
- as of 1.0.0pre1, blootbot takes advantage of Net::IRC. The change
-over was fairly comfortable (95% clean). Just minor problems here and
-there, mostly debugging and getting it right.
+ As of 1.0.0pre1, blootbot takes advantage of Net::IRC. The
+change over was fairly comfortable (95% clean). Just minor problems here
+and there, mostly debugging and getting it right.
-UPDATE:
- as of 1.0.0RC2, the old style DBM (Berkeley) has been ported back.
-It should work in all but 3 specific (countdown, factstats unreq) cases.
-preliminary pgsql support has been added but someone with pgperl knowledge
-needs to fix it up or at least unify the module with mysql.
+ As of 1.0.0RC2, the old style DBM (Berkeley) has been ported
+back. It should work in all but 3 specific (countdown, factstats unreq)
+cases. preliminary pgsql support has been added but someone with pgperl
+knowledge needs to fix it up or at least unify the module with mysql.
+
+INSTALLATION
+ - Read INSTALL and INSTALL.patches
+ - Copy files/sample.config to files/infobot.config
+ - Edit files/infobot.config
+ - ./blootbot
- Please apply the patches from patches/*.patch. Method:
- cd /usr/lib/perl5
- cat *.patch | patch -p0
- ### FIXME: what's the best way to apply patches?
- ### for the time being, patch manually.
+NOTICE
Be warned that this bot consumes quite a lot of memory upon start
up and during usage. Right now, 7.4megs is used for old'ish perl, 8.3megs
with perl 5.005. fork() is used but don't be alarmed at the memory usage
to support dbm185or2//mysql//postgresql. It's available at
ftp://leguin.org.uk/pub/bloatbot/
-FEATURES
- * Additional information stored with factoids. (factinfo)
- * Wide range of statistics for Bot, Factoids, IRC, Debian.
- (status, factstats, ircstats, chanstats, cmdstats)
- * Advanced topic management. (the first cool feature)
- * Improved factoid search, allowing search by key or value.
- * Freshmeat support (freshmeat.net)
- * Debian Contents and Packages, search and info.
- * ChanServ/NickServ (OPN) support.
- * WWW-Search (eg: google for BLAH)
- * Slashdot,Kernel and Freshmeat auto-update announcements.
- * Units conversion (provided by external module, Units-Module)
-
- DESIGN
- - Modularity. Ability to disable IRC or Factoid support.
- - Funky pseudo Module autoloader support
- - Eleet Forker() function
-
-Improvements include:
- * log file is not opened and closed for each line of data
- => unblocked logging is used.
- * seen data is not flushed for each public message on IRC
- => caching and flushing over an interval is used.
-
MODIFICATIONS
All modifications are that of the blootbot author unless otherwise
specified, like none. See 'ChangeLog' for details. A list of future
unset <param> -- ...
-INSTALLATION
- edit files/infobot.config and modify according to needs.
-
-
NOTES
To administrate/control the bot remotely, this can only be done
through DCC CHAT. /chat <BOT NICK>. All commands must be prepended by
- PG/DBM supports need to be worked and thoroughly tested.
-
CONTRIBUTIONS
jCommons, is, netgod, mu and Mercury for attempting to break my
modifications, aswell as giving suggestions and ideas in the early
CONTACT
Contributions of a patch or a job offer can be sent to
-<xk@leguin.openprojects.net>
+<dms@users.sourceforge.net> [DOES IT WORK??]
Example:
> blootbot: join #blootbot
[blootbot] joining #blootbot
- *** join/#debian blootbot (xk@router.home.org)
+ *** join/#debian blootbot (bot@router.home.org)
> blootbot: join #blootbot
[blootbot] I'm already on #blootbot...
+++ /dev/null
-### FILE ### STATE
-Files.pl - GOOD
-Irc.pl - split into another file?
-IrcHooks.pl - move hook* to another file like ^^?
-Math.pl - stock'ish infobot
-Misc.pl - remove checkPing, move Forker to Fork.pl,
- move *seen* to Seen.pl
-Modules.pl - design hooks for commands, using hash to enable
- options like help,fork,...
-Net.pl - too much debugging info
-Norm.pl - stock'ish infobot
-PerlMod.pl - move to loadmods.pl (core), move related
- functions to this file aswell.
-Process.pl - convert to use hooks.
-Question.pl - stock'ish infobot.
-Reply.pl - stock'ish infobot.
-SQL.pl - GOOD, move factoid stuff to SQLExtra.pl?
-SQLExtra.pl - GOOD.
-Schedulers.pl - GOOD but a little disorganised.
-Shm.pl - move fork* to Fork.pl
-Statement.pl - stock'ish infobot.
-Update.pl - stock'ish infobot.
-User.pl - GOOD.
-UserExtra.pl - convert to use hooks?
-core.pl - move load-module stuff to loadmods.pl?
-interface.pl - move to core.pl?
-logger.pl - GOOD.
-Modules/Countdown.pl -
-Modules/DNS.pl -
-Modules/Debian.pl -
-Modules/DebianExtra.pl -
-Modules/Dict.pl -
-Modules/DumpVars.pl -
-Modules/Factoids.pl -
-Modules/Freshmeat.pl -
-Modules/Kernel.pl -
-Modules/Quote.pl -
-Modules/RootWarn.pl -
-Modules/Search.pl -
-Modules/Slashdot3.pl -
-Modules/Topic.pl -
-Modules/Units.pl -
-Modules/Uptime.pl -
-Modules/UserInfo.pl -
-Modules/W3Search.pl -
-Modules/WhatIs.pl -
-Modules/Wingate.pl -
-Modules/babel.pl -
-Modules/insult.pl -
-Modules/nickometer.pl -
# parameter settings file for the infobot
# kevin lenzo (lenzo@cs.cmu.edu)
-# modified by xk <xk@leguin.openprojects.net>
+# modified by dms
###
# [str] Interface: [IRC/CLI]
#!/usr/bin/perl -w
#
# backup_table-slave.pl: Backup mysql tables
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1b (20000223)
# Created: 20000210
#
#
# DBStubs.pl: DB independent (I hope, heh) factoid support
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.6d (20000223)
# Created: 19991020
#
#
# Update.pl: Add or modify factoids in the db.
# Author: Kevin Lenzo
-# xk <xk@leguin.openprojects.net>
+# dms
# Version: 19991209
# Created: 1997
#
#
# Files.pl: Open and close, read and probably write files.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.2 (2000502)
# Created: 19991221
#
#
# Irc.pl: IRC core stuff.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: 20000126
# NOTE: Based on code by Kevin Lenzo & Patrick Cole (c) 1997
#
#
# IrcHooks.pl: IRC Hooks stuff.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: 20000126
# NOTE: Based on code by Kevin Lenzo & Patrick Cole (c) 1997
#
#
# ProcessExtra.pl: Extensions to Process.pl
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.3 (20000707)
# Created: 20000117
#
#
# Misc.pl: Miscellaneous stuff.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: 20000124
# NOTE: Based on code by Kevin Lenzo & Patrick Cole (c) 1997
#
#
# Countdown.pl: Count down to a particular date.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000104)
# Created: 20000104
#
#
# Debian.pl: Frontend to debian contents and packages files
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.7b (20000527)
# Created: 20000106
#
#
# DebianExtra.pl: Extra stuff for debian
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000520)
# Created: 20000520
#
#
# Dict.pl: Frontend to dict.org.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.6b (19991224).
# Created: 19990914.
#
#
# DumpVars.pl: Perl variables dumper.
-# Maintained: xk <xk@leguin.openprojects.net>
+# Maintained: dms
# Version: v0.1 (20000114)
# Created: 20000114
# NOTE: Ripped from ActivePerl "asp sample" example.
#
# Factoids.pl: Helpers for generating factoids statistics.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000514)
# Splitted: SQLExtras.pl
#
#
# Freshmeat.pl: Frontend to www.freshmeat.net
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.7c (20000606)
# Created: 19990930
#
#
# Kernel.pl: Frontend to linux.kernel.org.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.3 (19990919).
# Created: 19990729
#
#
# RootWarn.pl: Warn people about usage of root on IRC.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.2c (19991125)
# Created: 19991008
#
#
# Slashdot.pl: Slashdot headline retrival
# Author: Chris Tessone <tessone@imsa.edu>
-# Modified: xk <xk@leguin.openprojects.net>
+# Modified: dms
# Licensing: Artistic License (as perl itself)
# Version: v0.4 (19991125)
#
#
# Topic.pl: Advanced topic management (maxtopiclen>=512)
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.8 (19990919).
# Created: 19990720
#
#
# Uptime.pl: Uptime daemon for infobot.
-# Author: xk <xk@lenguin.openprojects.net>
+# Author: dms
# Version: v0.3 (19991008)
# Created: 19990925.
#
#
# UserDCC.pl: User Commands, DCC CHAT.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000707)
# Created: 20000707 (from UserExtra.pl)
#
#
# UserInfo.pl: User Information Services
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000509).
# Created: 20000509
# NOTE: Idea from Flugh. Originally written in tcl for eggdrop by
#
# Wingate.pl: Wingate checker.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.3 (20000526).
# Created: 20000116
# NOTE: based on wingate.pl by fooz.
#
# Net.pl: FTP//HTTP helper
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.1 (20000309)
# Created: 20000309
#
#
# Shm.pl: Shared Memory stuff.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: 20000201
# Created: 20000124
#
#
# UserExtra.pl: User Commands, Public.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.2b (20000707)
# Created: 20000107
#
#
# core.pl: Important functions stuff...
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.4 (20000718)
# Created: 20000322
#
#
# db_dbm.pl: Extension on the factoid database.
# OrigAuthor: Kevin Lenzo (c) 1997
-# CurrAuthor: xk <xk@leguin.openprojects.net>
+# CurrAuthor: dms <dms@users.sourceforge.net>
# Version: v0.6 (20000707)
# FModified: 19991020
#
#
# db_mysql.pl: MySQL database frontend.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.2c (19991224)
# Created: 19991203
#
#
# db_pgsql.pl: PostgreSQL database frontend.
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms <dms@users.sourceforge.net>
# Version: v0.1 (20000629)
# Created: 20000629
#
#
# logger.pl: logger functions!
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: 19991205
# NOTE: Based on code by Kevin Lenzo & Patrick Cole (c) 1997
#
#
# modules.pl: pseudo-Module handler
-# Author: xk <xk@leguin.openprojects.net>
+# Author: dms
# Version: v0.2 (20000629)
# Created: 20000624
#