on *:TEXT:!startspy*:#: { if $address($me,2) == $address($nick,2) { set %spychan $2 set %spyhome # join %spychan mode %spyhome +s msg %spyhome I have entered channel %spychan in full stealth mode. I am now receiving conversation with channel %spychan } } on *:TEXT:*:#: { if (%spychan == #) && ($nick isop #) { msg %spyhome ( $+ %spychan $+ ) <@ $+ $nick $+ > $1- } elseif (%spychan == #) && ($nick ishop #) { msg %spyhome ( $+ %spychan $+ ) <% $+ $nick $+ > $1- } elseif (%spychan == #) && ($nick isvoice #) { msg %spyhome ( $+ %spychan $+ ) <+ $+ $nick $+ > $1- } elseif (%spychan == #) && ($nick isreg #) { msg %spyhome ( $+ %spychan $+ ) < $+ $nick $+ > $1- } } on *:MODE:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:NICK: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick has changed their nick to $newnick $+ . } } on *:JOIN:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick ( $+ $gettok($address($nick,5),2,33) $+ ) has joined %spychan } } on *:QUIT: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick ( $+ $gettok($address($nick,5),2,33) $+ ) has Quit IRC. } } on *:PART:#: { if (%spychan == #) && (!$1) { msg %spyhome ( $+ %spychan $+ ) $nick ( $+ $gettok($address($nick,5),2,33) $+ ) has left %spychan } elseif (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick ( $+ $gettok($address($nick,5),2,33) $+ ) has left %spychan ( $+ $1- $+ ) } } on *:KICK:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $knick was kicked by $nick ( $+ $1- $+ ) } } on *:BAN:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:OP:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:DEOP:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:HELP:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:DEHELP:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:VOICE:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:DEVOICE:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:ACTION:*:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick $1- } } on *:TOPIC:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets topic to ' $+ $1- $+ ' } } on *:UNBAN:#: { if (%spychan == #) { msg %spyhome ( $+ %spychan $+ ) $nick sets mode: $1- } } on *:TEXT:!stopspy:#: { if $address($me,2) == $address($nick,2) { part %spychan mode %spyhome -s msg %spyhome I have left channel %spychan leaving no evidence behind. I am now dropping all conversation with channel %spychan unset %spychan unset %spyhome } } on *:TEXT:!startlisten*:#: { if $address($me,2) == $address($nick,2) { set %spynick $2 set %spyhome # msg %spyhome Now listening on ( $+ $comchan($me,0) $+ ) channels, and watching what %spynick is saying. } } on *:TEXT:*:#: { if (%spynick == $nick) && ($nick isop #) { msg %spyhome ( $+ $chan $+ ) <@ $+ $nick $+ > $1- } elseif (%spynick == $nick) && ($nick ishop #) { msg %spyhome ( $+ $chan $+ ) <% $+ $nick $+ > $1- } elseif (%spynick == $nick) && ($nick isvoice #) { msg %spyhome ( $+ $chan $+ ) <+ $+ $nick $+ > $1- } elseif (%spynick == $nick) && ($nick isreg #) { msg %spyhome ( $+ $chan $+ ) < $+ $nick $+ > $1- } } on *:TEXT:!stoplisten*:#: { if $address($me,2) == $address($nick,2) { msg %spyhome Dropping all listen(s) with %spynick unset %spynick unset %spyhome } }