]> git.donarmstrong.com Git - infobot.git/blob - README
Initial revision
[infobot.git] / README
1 blootbot v1.0.0RC3 (20000709)
2 -------------------------
3
4 INTRODUCTION
5         This bot is based upon infobot-0.44.2 by kevin lenzo
6 <lenzo@cs.cmu.edu>. The basis of infobot is still there but _many_ wild
7 features have been added. Along the way, a couple of typos were spotted
8 in the original infobot source and fixed in this version. Without infobot,
9 there would be no blootbot so all thanks to kevin for bringing infobot in
10 the first place.
11
12         as of 0.99pre1, blootbot supports mysql database in the hope to
13 increase performance and to avoid borked over dbm's which occurred when
14 the bot crashed (??). The mysql code is far larger (or perhaps twice
15 as many functions) than expected even though a few functions were needed
16 for DBM due to lack of table deficiencies.
17
18         as of 1.0.0pre1, blootbot takes advantage of Net::IRC. The change
19 over was fairly comfortable (95% clean). Just minor problems here and
20 there, mostly debugging and getting it right.
21
22 UPDATE:
23         as of 1.0.0RC2, the old style DBM (Berkeley) has been ported back.
24 It should work in all but 3 specific (countdown, factstats unreq) cases.
25 preliminary pgsql support has been added but someone with pgperl knowledge
26 needs to fix it up or at least unify the module with mysql.
27
28         Please apply the patches from patches/*.patch. Method:
29                 cd /usr/lib/perl5
30                 cat *.patch | patch -p0
31                 ### FIXME: what's the best way to apply patches?
32                 ### for the time being, patch manually.
33
34         Be warned that this bot consumes quite a lot of memory upon start
35 up and during usage. Right now, 7.4megs is used for old'ish perl, 8.3megs
36 with perl 5.005. fork() is used but don't be alarmed at the memory usage
37 as fork(), as I was told, uses COW (copy on write).
38
39         WARNING: enabling wingate support may involve complaints of some
40 sort, probably because the telnet connection isn't closed properly.
41 However, these people do not realize the potential of open wingates.
42
43         Please beta test it and report bugs as I have not had the time to
44 test all modifications properly (and extensively).  Suggestions are
45 welcomed.
46
47         a few guys from #debian@OPN are attempting to rewrite the bot in C
48 to support dbm185or2//mysql//postgresql. It's available at
49 ftp://leguin.org.uk/pub/bloatbot/
50
51 FEATURES
52         * Additional information stored with factoids. (factinfo)
53         * Wide range of statistics for Bot, Factoids, IRC, Debian.
54           (status, factstats, ircstats, chanstats, cmdstats)
55         * Advanced topic management. (the first cool feature)
56         * Improved factoid search, allowing search by key or value.
57         * Freshmeat support (freshmeat.net)
58         * Debian Contents and Packages, search and info.
59         * ChanServ/NickServ (OPN) support.
60         * WWW-Search (eg: google for BLAH)
61         * Slashdot,Kernel and Freshmeat auto-update announcements.
62         * Units conversion (provided by external module, Units-Module)
63
64         DESIGN
65                 - Modularity. Ability to disable IRC or Factoid support.
66                 - Funky pseudo Module autoloader support
67                 - Eleet Forker() function
68
69 Improvements include:
70         * log file is not opened and closed for each line of data
71                 => unblocked logging is used.
72         * seen data is not flushed for each public message on IRC
73                 => caching and flushing over an interval is used.
74
75 MODIFICATIONS
76         All modifications are that of the blootbot author unless otherwise
77 specified, like none.  See 'ChangeLog' for details.  A list of future
78 features listed in 'TODO'.
79
80         See 'USAGE' for complete list of commands with description
81 (FIXME) and examples (FIXME).  Yes, it is incomplete.  It is better for
82 you to find the cookies than for me to hand-feed them to you ;)
83
84         See 'EXAMPLES' for various usage of factoids and "hidden"
85 variables.  If you're hardcore, check out 'CommandStubs.pl' and 
86 'UserExtras.pl' for cool features.
87
88         topic [help]            - Topic help.
89         topic add <topic>       - Append <topic> to the current topic.
90         topic del <#>           - Purge topic ID <#> from current topic.
91         topic list              - List broken down summary of current topic.
92         topic mod s/old/new/    - Modify the topic using regex.
93                                 - Now supports , and # as delimiters.
94         topic mv <1> <type> <2> - <type>:
95                                         before - Move <1> before <2>
96                                         after  - Move <1> after <2>
97                                         swap   - Swap <1> and <2>
98         topic shuffle           - Jumble the subtopics.
99
100         topic history           - Show previous channel topics.
101         topic restore <#>       - Restore channel topic to <#> on history
102                                   #list.
103
104 ==> Individual commands: NEW
105         (lobotomy|bequiet)      -- [o] silence the bot.
106         (unlobotomy|benoisy)    -- [o] unsilence the bot.
107
108         set <param> <value>     -- ...
109         unset <param>           -- ...
110
111
112 INSTALLATION
113         edit files/infobot.config and modify according to needs.
114
115
116 NOTES
117         To administrate/control the bot remotely, this can only be done
118 through DCC CHAT. /chat <BOT NICK>.  All commands must be prepended by
119 '.' otherwise it is sent to the bot chat net
120
121 ### UNTESTED:
122         - user statistics shown by 'seen'. bug in this?
123         - User Information Services.
124         - new wingate caching/file-read code.
125         - disabling IRC/factoid support code.
126         - PG/DBM supports need to be worked and thoroughly tested.
127
128
129
130 CONTRIBUTIONS
131         jCommons, is, netgod, mu and Mercury for attempting to break my
132 modifications, aswell as giving suggestions and ideas in the early
133 development stages. Bashing of modifications courtesy of larne, irq, lilo
134 and \broken.
135
136         mu@OPN for the SAR (=~ s///) and Topic history patch.
137
138         someone emailed me a patch to fix up telnet but I accidently
139 deleted the message together with the patch after replying to the guy. I
140 hope to get that same guy to re-send me the patch...
141
142         MbM sent me a patch to clean up behaviour of factoids
143 (adding,removing, modifying). Thanks.
144
145
146 CONTACT
147         Contributions of a patch or a job offer can be sent to
148 <xk@leguin.openprojects.net>