X-Git-Url: https://git.distorted.org.uk/~mdw/ircbot/blobdiff_plain/de4ab9b9210cf69271e226057617bcc9925cfe70..b3d361abe62659d18e3fa9a1d3156482ea97a922:/bot.tcl diff --git a/bot.tcl b/bot.tcl index 95febc4..bef0ead 100755 --- a/bot.tcl +++ b/bot.tcl @@ -3,6 +3,17 @@ set host chiark set port 6667 if {![info exists nick]} { set nick Blight } +if {![info exists ownfullname]} { set ownfullname "here to Help" } +set ownmailaddr blight@chiark.greenend.org.uk + +if {![info exists globalsecret]} { + set gsfile [open /dev/urandom r] + fconfigure $gsfile -translation binary + set globalsecret [read $gsfile 32] + binary scan $globalsecret H* globalsecret + close $gsfile + unset gsfile +} proc sendout {command args} { global sock @@ -374,16 +385,20 @@ proc def_ucmd {cmdname body} { proc ucmdr {priv pub args} { return -code return [concat [list $priv $pub] $args] } - -def_ucmd help { - ta_nomore + +proc ucmd_sendhelp {} { ucmdr \ {Commands currently understood: -help get this list of commands -seen ask after someone (I'll tell them you asked) -summon invite a logged-on user onto IRC} {} + help get this list of commands + seen ask after someone (I'll tell them you asked) + summon invite a logged-on user onto IRC +Send commands to be by /msg, or say them in channel with ! in front.} {} } +def_ucmd help { ta_nomore; ucmd_sendhelp } + +def_ucmd ? { ta_nomore; ucmd_sendhelp } + proc manyset {list args} { foreach val $list var $args { upvar 1 $var my @@ -434,6 +449,8 @@ def_ucmd summon { } } +proc md5sum {value} { exec md5sum << $value } + def_ucmd seen { global lastseen nick prefix_nick @@ -472,7 +489,7 @@ if {![info exists sock]} { #fconfigure $sock -translation binary fconfigure $sock -translation crlf - sendout USER guest 0 * "chiark testing bot" + sendout USER blight 0 * $ownfullname sendout NICK $nick fileevent $sock readable onread }