]> git.donarmstrong.com Git - infobot.git/blob - doc/notes.txt
Initial revision
[infobot.git] / doc / notes.txt
1 ##### GLOBAL VARIABLES
2 ### Scalar variable.
3 $who            => Process.pl#7:
4 $msgType        => Process.pl#7:
5 $message        => Process.pl#7:
6 $origWho        => Process.pl#12: untouched $who variable.
7 $origMessage    => Process.pl#13: untouched $message variable.
8 $origIn         => Question.pl#15: (my) successful (not repeated) asked factoid
9 $who            => Process.pl#6:
10 $message        => Process.pl#6:
11 $nuh            => Irc.pl#279: nick-user-host
12 $userHandle     => User.pl: handle which nick is registered under.
13 ### Array.
14 ### Hash lists.
15 %channels       => $channels{$channel}{$mode}{$nick}
16 %chanstats      => $chanstats{$channel}{TYPE}
17 %cmdstats       => $cmdstats{TYPE}
18 %userList       => $userList{$user}{$type}
19 %userList       => $userList{$user}{'mask'}{$what} = 1;
20 #####
21
22 ### Thorough check and cleanup of... (comments need to be read though)
23 Process.pl              19991128
24 Irc.pl                  19991128
25 Misc.pl                 19991128
26
27
28
29 ### Address testing with the "new" code.
30 ### nick == $1, text = $'
31 blah erp                good
32 blah erp erp            good
33 blah:erp                good... about time got it to work.
34 blah:erp erp            good... ditto
35 blah :erp               good
36 blah :erp erp           good
37 blah : erp              good
38 blah : erp erp          good
39 blah  : erp             good
40 blah  : erp erp         good
41 blah  :  erp            good
42 blah  :  erp erp        good
43
44 unfski erp              good
45 unfski erp erp          good
46 unfski:erp              hrm... good :)
47 unfski:erp erp          hrm... good :)
48 unfski :erp             good
49 unfski :erp erp         good
50 unfski : erp            good
51 unfski : erp erp                good
52 unfski  : erp           good
53 unfski  : erp erp               good
54 unfski  :  erp          good
55 unfski  :  erp erp      good
56
57 ### some notes...
58 &DoModes($chan,$modes,$targets);
59 &DeleteUserInfo($nick,@chans);
60 # NOTE: subhash list can only be deleted with "delete" not with "undef".
61 foreach $chan (keys %channels) {
62 foreach $mode (keys %{$channels{$chan}}) {
63 foreach $user (keys %{$channels{$chan}{$mode}}) {
64
65 ### &DeleteUserInfo().
66 # DUI:  type    working         fix
67 #       part    yes             undef=>delete
68 #       sign    yes             fe loops=>DUI($n,%c);
69 #       nick    yes             undef=>delete
70 #       kill    ...             ...
71 ###
72
73 ###
74 ### Soon to be new format of factoid.db, or at least infobot-extra.db
75 ###
76 [factoid key] -> [created].[modified].[requests].[locked]
77                     |         |           |         |
78                 [who by]   [who by]    [who by]  [who by]
79                  [time]     [time]     [time]     [time]
80                                        [count]
81
82 $db{'key'}    = $created_by     .$;. $created_time      .$;$;.
83                 $modified_by    .$;. $modified_time     .$;$;.
84                 $request_by     .$;. $request_time      .$;. $request_count .$;$;.
85                 $locked_by      .$;. $locked_time;
86
87 factoid can only be unlocked by creator. possibly need to be matched
88 against nick || user@*.x.org || user@x.y.z.*
89
90 #####
91 # forget: factoid locking               half-done TODO
92 # factoid query                         DONE.
93 # factoid update (2 create; 4 modify)   DONE.
94 #####
95
96 raw: ..... KICK #tnflesh damagick :i can do this too
97 940445681 [12632] >>> [1mtoo[0m was kicked off [1m#tnflesh damagick :i \
98         can do this[0m by [1mChimmy[0m ([1mP[0m)
99 my ($kicker, $chan, $knick, $why) = @_;
100     $1       $2     $4      $5
101
102 ("Op",          yes
103 "Deop",         yes
104 "Ban",          yes
105 "Unban",        yes
106 "Topic",        yes
107 "Kick",         yes
108 "PublicMsg"     yes
109 "Part",         yes
110 "SignOff",      yes
111 "Join"          yes