From: Rudolf Polzer Date: Tue, 27 Dec 2011 12:54:03 +0000 (+0100) Subject: rcon2irc: add an option irc_commands X-Git-Tag: xonotic-v0.6.0~33 X-Git-Url: https://git.xonotic.org/?p=xonotic%2Fxonotic.git;a=commitdiff_plain;h=207cf23b36ad8a8583ffb3670dbb2ffd46f5c7b5 rcon2irc: add an option irc_commands --- diff --git a/server/rcon2irc/rcon2irc-example.conf b/server/rcon2irc/rcon2irc-example.conf index 2e031cdb..7a537991 100644 --- a/server/rcon2irc/rcon2irc-example.conf +++ b/server/rcon2irc/rcon2irc-example.conf @@ -21,6 +21,9 @@ irc_channel = #Xonotic-Pwayers # Users with a Q account listed here can use admin commands on the bot #irc_quakenet_authusers = a b c +# IRC on-connect commands +#irc_commands = PRIVMSG Admin :hello, I am there; MODE $nick +x + # Extra plug-ins to load #plugins = diff --git a/server/rcon2irc/rcon2irc.pl b/server/rcon2irc/rcon2irc.pl index ecc8d5aa..cb800e84 100755 --- a/server/rcon2irc/rcon2irc.pl +++ b/server/rcon2irc/rcon2irc.pl @@ -759,6 +759,7 @@ our %config = ( irc_admin_quote_re => "", irc_reconnect_delay => 300, + irc_commands => "", plugins => "", ); @@ -1062,10 +1063,17 @@ sub irc_joinstage($) # we get here again when Q asks us } } + + for(split / *; */, $store{irc_commands}) + { + s/\$nick/$store{irc_nick}/g; + out irc => 1, $_; + } # if we get here, we are on IRC $store{irc_joined_channel} = 1; schedule sub { + # wait 1 sec to let stuff calm down out irc => 1, "JOIN $config{irc_channel}"; } => 1; return 0; @@ -1379,7 +1387,10 @@ sub cond($) if ($nick eq $store{irc_nick}) { $store{irc_maxlen} = 510 - length($hostmask); - $store{irc_joined_channel} = 1; + if($store{irc_joined_channel} == 1) + { + $store{irc_joined_channel} = 2; + } print "* detected maximum line length for channel messages: $store{irc_maxlen}\n"; }