;written by Weaver ;Use: enables a mesage to be sent to another server without opeing a new connection. ;syntax /servermsg ;example: /servermsg irc.dalnet.com username Hi, do you wanna come and join me on irc.server.com? ;multi server capable ;report bugs to: email irccompanionATgmail.com alias servermsg { if ($numtok($1-,32) < 3) { echo $color(info) -a * /servermsg: insufficient parameters, use | return } if $sock($+(servermsg,_,$1)) { echo $color(info) -a * /servermsg: error one connection is already open for $+($1,.) | halt } set -e $+(%,server_msg,_,$1) $3- var %ntwork = $+($1,_,$2),%socket = $+(servermsg,_,$1) sockopen %socket $gettok(%ntwork,1,95) 6667 sockmark $+(servermsg,_,$1) $+($1,_,$2,) echo $color(info) -a * /servermsg: opening connection to $gettok(%ntwork,1,95) } on *:sockopen:servermsg*:{ if ($sockerr) { echo $color(info) -a * /servermsg: error connecting to $gettok($sock($sockname).mark,1,95) | close_servermsg $sockname | return } sockwrite -n $sockname $upper(nick) sm $+ $right($ticks,4) sockwrite -n $sockname $upper(user) servermsg . . servermsg } on *:sockread:servermsg*: { var %tmpdata sockread %tmpdata tokenize 32 %tmpdata if ($4- == :) { echo $color(info) -a * /servermsg: could not find $gettok($sock($sockname).mark,2,95) on $gettok($sock($sockname).mark,1,95) | close_servermsg $sockname } if ($1 == ping) { smsockwrite $upper(pong) $2 } if ($2 == 376) { smsockwrite $upper(ison) $gettok($sock($sockname).mark,2,95) } if ($2 == 505) { echo $color(info) -a * /servermsg: Unreged users cannot message $gettok($sock($sockname).mark,2,95) at the present time. | close_servermsg $sockname } if ($2 == 433) { echo $color(info) -a * /servermsg: Nick already in use, error connecting. | close_servermsg $sockname } if ($2 == 401) && (no such user isin $5-) { echo -a $color(info) * /servermsg: no such user $gettok($sock($sockname).mark,2,95) on $gettok($sock($sockname).mark,1,95 ) | close_servermsg $sockname } if ($2 == 465 ) { echo $color(info) -a * /servermsg: * You were akilled on $gettok($sock($sockname).mark,1,95) | close_servermsg $sockname } if ($2 == 303) && ($4- != :) { var %msg = $gettok($sock($sockname).mark,1,95) smsockwrite $upper(privmsg) $gettok($sock($sockname).mark,2,95) : $+ $($+(%,server_msg_,$gettok($sock($sockname).mark,1,95)),2) echo $color(info) -a * /servermsg: message succesfully sent to $gettok($sock($sockname).mark,2,95) on $+($gettok($sock($sockname).mark,1,95),.) close_servermsg $sockname } } on 1:sockclose:servermsg:{ unset %server_msg } alias -l smsockwrite { sockwrite -n $sockname $1- } alias -l close_servermsg { unset $+(%,server_msg_ ,$gettok($sock($1).mark,1,95)) sockclose $1 }