chiark
/
gitweb
/
~mdw
/
ircbot
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
When someone leaves a channel and they say why, remember it. Cope if uptime says...
[ircbot]
/
bot.tcl
diff --git
a/bot.tcl
b/bot.tcl
index 1119fbfc02494e759bf434ed039dec435a0584bc..e021af774f92c1c3ecca647b42331b362427c177 100755
(executable)
--- a/
bot.tcl
+++ b/
bot.tcl
@@
-422,9
+422,14
@@
proc msg_JOIN {p c chan} {
lappend nlist $nl
nick_ishere $n
}
lappend nlist $nl
nick_ishere $n
}
-proc msg_PART {p c chan} {
+proc msg_PART {p c chan
args
} {
prefix_nick
prefix_nick
- recordlastseen_n $n "leaving $chan" 1
+ set msg "leaving $chan"
+ if {[llength $args]} {
+ set why [lindex $args 0]
+ if {"[irctolower $why]" != "[irctolower $n]"} { append msg " ($why)" }
+ }
+ recordlastseen_n $n $msg 1
process_kickpart $chan $n
}
proc msg_QUIT {p c why} {
process_kickpart $chan $n
}
proc msg_QUIT {p c why} {
@@
-1279,7
+1284,7
@@
proc lnick_pingstring {why oc apstring} {
catch { exec uptime } uptime
set nnicks [llength [array names nick_onchans]]
if {[regexp \
catch { exec uptime } uptime
set nnicks [llength [array names nick_onchans]]
if {[regexp \
- {^ *([0-9:apm]+) +up.*, +(\d+) users, +load average: +([0-9., ]+) *$} \
+ {^ *([0-9:apm]+) +up.*, +(\d+) users
?
, +load average: +([0-9., ]+) *$} \
$uptime dummy time users load]} {
regsub -all , $load {} load
set uptime "$time $nnicks/$users $load"
$uptime dummy time users load]} {
regsub -all , $load {} load
set uptime "$time $nnicks/$users $load"