From: dms Date: Mon, 18 Sep 2000 11:37:51 +0000 (+0000) Subject: chanserv update to &joinNextChan() X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=9e4fb585acef74d10f4faaddcf72e415ae813a4c;p=infobot.git chanserv update to &joinNextChan() git-svn-id: https://svn.code.sf.net/p/infobot/code/trunk@111 c11ca15a-4712-0410-83d8-924469b57eb5 --- diff --git a/blootbot/src/IRC/Irc.pl b/blootbot/src/IRC/Irc.pl index f377598..0af89db 100644 --- a/blootbot/src/IRC/Irc.pl +++ b/blootbot/src/IRC/Irc.pl @@ -271,9 +271,11 @@ sub performReply { } &msg($who, $reply); } elsif ($msgType eq 'chat') { - &DEBUG("pR: chat: reply => '$reply'."); - &DEBUG("pR: chat: sock => '$dcc{'CHAT'}{$nick}'."); - &DEBUG("pR: chat: sock => '$dcc{'CHAT'}{$who}'."); + if (!exists $dcc{'CHAT'}{$who}) { + &WARN("pSR: dcc{'CHAT'}{$who} does not exist."); + return; + } + $conn->privmsg($dcc{'CHAT'}{$who}, $reply); } else { &ERROR("PR: msgType invalid? ($msgType)."); } @@ -463,6 +465,21 @@ sub joinNextChan { if (my $i = scalar @joinchan) { &status("joinNextChan: $i chans to join."); } + } else { + return unless (&IsParam("chanServ_ops")); + if (!$nickserv) { + &DEBUG("jNC: nickserv/chanserv not up?"); + } + + my @chans = split(/[\s\t]+/, $param{'chanServ_ops'}); + foreach $chan (keys %channels) { + next unless (grep /^$chan$/i, @chans); + + if (!exists $channels{$chan}{'o'}{$ident}) { + &status("ChanServ ==> Requesting ops for $chan."); + &rawout("PRIVMSG ChanServ :OP $chan $ident"); + } + } } }