And it is half working. It will not replay when people leave a channel.
Code: Select all
[01:41] Tcl error [send_mode]: wrong # args: should be "send_mode nick uhost hand chan mchg"
Code: Select all
[01:41] Tcl error [send_mode]: wrong # args: should be "send_mode nick uhost hand chan mchg"
Code: Select all
#------------------------------------------------------------------------
# relay.tcl v1.0.0 - Send channel text from one network to another
# By: cl00bie <cl00bie@sorcery.net>
#
# This script takes text, joins, parts, etc. From a channel on one network,
# sends it to the other network on the same channel and visa versa. This
# script requires two bots which are botnetted (Instructions on how to link
# bots is beyond the scope of this document. See BOTNET in the $eggdrop/doc
# directory.)
#
# Once your bots are netted, simply add the channels you'd like to relay
# to the channelList variable, fill in the server?List variables (as per
# (the instructions) and load this script on both bots.
#
# Proposed Enhancements:
# o xkick - kick someone off the remote bot channel
# o xwhois - do a /whois on the remote bot channel
# o xmsg - send a private message to someone on the remote bot channel
# o Synchronize topics
#------------------------------------------------------------------------
# List of channels to relay between (lower case only!)
set channelList "#channel"
# This identifies the server information of the two networks you wish to
# relay to each other. There are three entries in each and they are as
# follows:
# 0 - A unique pattern in each of the servers you use on a particular
# network. (ex. all SorceryNet servers contain the word "sorcery"
# in them, but none of the DALnet servers use this.)
# 1 - The name of the network as you'd like it to appear on the *other*
# network (ex. <Dal-Bot> [SorceryNet] <Nickname> hi there everyone on
# DALnet :))
# 2 - The name of the bot which sits on the *other* network. (The bot you
# want the informaiton sent *to*)
set server1List "dal \00303DALnet\003 Beirut"
set server2List "Beirut \00304Beirut\003 Dalnet"
# Procedure: send_across - sends the information from one network to
# the other.
proc send_across {cmd chan nick text} {
global server channelList server1List server2List
if {[lsearch $channelList [string tolower $chan]] != -1} {
if {[string first [lindex $server1List 0] $server] != -1} {
set fromServer "[lindex $server1List 1]"
set toBot "[lindex $server1List 2]"
} else {
set fromServer "[lindex $server2List 1]"
set toBot "[lindex $server2List 2]"
}
set botMsg [concat $cmd $chan $fromServer $nick $text]
putbot $toBot $botMsg
}
}
# Find out who's on the other network channel
proc send_xnames {nick uhost hand arg} {
global botnick
if {$arg == "" || [string first "#" $arg] != 0} {
putserv "NOTICE $nick :Usage\: /msg $botnick xnames #channel"
} else {
if {[onchan $nick $arg]} {
send_across "names" $arg $nick "dummy"
} else {
putserv "NOTICE $nick :I'm sorry, you must be in channel $arg to do a remote names (xnames) command"
}
}
}
bind msg - xnames send_xnames
proc relay_xnames {frm_bot command arg} {
set startingChanlist "[chanlist [lindex $arg 0]]"
foreach mem $startingChanlist {
if {[isop $mem [lindex $arg 0]]} {
lappend finalChanlist \@$mem
} elseif {[isvoice $mem [lindex $arg 0]]} {
lappend finalChanlist \+$mem
} else {
lappend finalChanlist $mem
}
}
send_across "rnames" [lindex $arg 0] [lindex $arg 2] $finalChanlist
}
bind bot - names relay_xnames
proc recv_xnames {frm_bot command arg} {
putserv "NOTICE [lindex $arg 2] :The following people are on channel [lindex $arg 0] on net [lindex $arg 1] : [lrange $arg 3 end]"
}
bind bot - rnames recv_xnames
proc send_nick {nick uhost hand chan newnick} {
send_across "nick" $chan $nick $newnick
}
bind nick - * send_nick
proc recv_nick {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00306*** [lindex $arg 2] is now known as [lrange $arg 3 end]\003"
}
bind bot - nick recv_nick
proc send_mode {nick uhost hand chan mchg victim} {
if {[string first "b" [lindex $mchg 0]] != -1} {
send_across "ban" $chan $nick $mchg
}
}
bind mode - * send_mode
# Multiple recv's from one send
proc recv_ban {frm_bot command arg} {
putserv "MODE [lindex $arg 0] [lrange $arg 3 end]"
}
bind bot - ban recv_ban
proc send_sign {nick uhost hand chan reason} {
send_across "sign" $chan $nick $reason
}
bind sign - * send_sign
proc recv_sign {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00302*** [lindex $arg 2] Quit \([lrange $arg 3 end]\)\003"
}
bind bot - sign recv_sign
proc send_pubm {nick uhost hand chan text} {
set cmd "pubm"
send_across $cmd $chan $nick $text
}
bind pubm - * send_pubm
proc recv_pubm {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \<[lindex $arg 2]\> [lrange $arg 3 end]"
}
bind bot - pubm recv_pubm
proc send_action {nick uhost hand chan keyw text} {
send_across "act" $chan $nick $text
}
bind ctcp - "ACTION" send_action
proc recv_action {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00306\* [lindex $arg 2] [lrange $arg 3 end]\003"
}
bind bot - act recv_action
proc send_join {nick uhost hand chan} {
send_across "join" $chan $nick\($uhost\) "dummy"
send_across "names" $chan $nick "dummy"
}
bind join - * send_join
proc recv_join {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00307\*** Joins [lindex $arg 2]\003"
# putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00307\*** [lindex $arg 2] has joined channel [lindex $arg 0]\003"
}
bind bot - join recv_join
proc send_part {nick uhost hand chan arg} {
send_across "part" $chan $nick ""
}
bind part - * send_part
proc recv_part {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00310\*** [lindex $arg 2] has left channel [lindex $arg 0]\003"
}
bind bot - part recv_part
putlog "relay 1.0.0 by: cl00bie <cl00bie@sorcery.net>"
Code: Select all
[02:12] Tcl error [send_mode]: wrong # args: should be "send_mode nick uhost hand chan mchg"
Code: Select all
[02:59] Tcl error [send_mode]: wrong # args: should be "send_mode nick uhost han d chan mchg"
Code: Select all
#------------------------------------------------------------------------
# relay.tcl v1.0.0 - Send channel text from one network to another
# By: cl00bie <cl00bie@sorcery.net>
#
# This script takes text, joins, parts, etc. From a channel on one network,
# sends it to the other network on the same channel and visa versa. This
# script requires two bots which are botnetted (Instructions on how to link
# bots is beyond the scope of this document. See BOTNET in the $eggdrop/doc
# directory.)
#
# Once your bots are netted, simply add the channels you'd like to relay
# to the channelList variable, fill in the server?List variables (as per
# (the instructions) and load this script on both bots.
#
# Proposed Enhancements:
# o xkick - kick someone off the remote bot channel
# o xwhois - do a /whois on the remote bot channel
# o xmsg - send a private message to someone on the remote bot channel
# o Synchronize topics
#------------------------------------------------------------------------
# List of channels to relay between (lower case only!)
set channelList "#clan|dc"
# This identifies the server information of the two networks you wish to
# relay to each other. There are three entries in each and they are as
# follows:
# 0 - A unique pattern in each of the servers you use on a particular
# network. (ex. all SorceryNet servers contain the word "sorcery"
# in them, but none of the DALnet servers use this.)
# 1 - The name of the network as you'd like it to appear on the *other*
# network (ex. <Dal-Bot> [SorceryNet] <Nickname> hi there everyone on
# DALnet :))
# 2 - The name of the bot which sits on the *other* network. (The bot you
# want the informaiton sent *to*)
set server1List "enter GameSurge dc|bot|et"
set server2List "gamesurge EnterTheGame dc|bot|gs"
# Procedure: send_across - sends the information from one network to
# the other.
proc send_across {cmd chan nick text} {
global server channelList server1List server2List
if {[lsearch $channelList [string tolower $chan]] != -1} {
if {[string first [lindex $server1List 0] $server] != -1} {
set fromServer "[lindex $server1List 1]"
set toBot "[lindex $server1List 2]"
} else {
set fromServer "[lindex $server2List 1]"
set toBot "[lindex $server2List 2]"
}
set botMsg [concat $cmd $chan $fromServer $nick $text]
putbot $toBot $botMsg
}
}
# Find out who's on the other network channel
proc send_xnames {nick uhost hand arg} {
global botnick
if {$arg == "" || [string first "#" $arg] != 0} {
putserv "NOTICE $nick :Usage\: /msg $botnick xnames #channel"
} else {
if {[onchan $nick $arg]} {
send_across "names" $arg $nick "dummy"
} else {
putserv "NOTICE $nick :I'm sorry, you must be in channel $arg to do a remote names (xnames) command"
}
}
}
bind msg - xnames send_xnames
proc relay_xnames {frm_bot command arg} {
set startingChanlist "[chanlist [lindex $arg 0]]"
foreach mem $startingChanlist {
if {[isop $mem [lindex $arg 0]]} {
lappend finalChanlist \@$mem
} elseif {[isvoice $mem [lindex $arg 0]]} {
lappend finalChanlist \+$mem
} else {
lappend finalChanlist $mem
}
}
send_across "rnames" [lindex $arg 0] [lindex $arg 2] $finalChanlist
}
bind bot - names relay_xnames
proc recv_xnames {frm_bot command arg} {
putserv "NOTICE [lindex $arg 2] :The following people are on channel [lindex $arg 0] on net [lindex $arg 1] : [lrange $arg 3 end]"
}
bind bot - rnames recv_xnames
proc send_nick {nick uhost hand chan newnick} {
send_across "nick" $chan $nick $newnick
}
bind nick - * send_nick
proc recv_nick {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00306*** [lindex $arg 2] is now known as [lrange $arg 3 end]\003"
}
bind bot - nick recv_nick
proc send_mode {nick uhost hand chan mchg victim} {
if {[string first "b" [lindex $mchg 0]] != -1} {
send_across "ban" $chan $nick $mchg
}
}
bind mode - * send_mode
# Multiple recv's from one send
proc recv_ban {frm_bot command arg} {
putserv "MODE [lindex $arg 0] [lrange $arg 3 end]"
}
bind bot - ban recv_ban
proc send_sign {nick uhost hand chan reason} {
send_across "sign" $chan $nick $reason
}
bind sign - * send_sign
proc recv_sign {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00302*** [lindex $arg 2] Quit \([lrange $arg 3 end]\)\003"
}
bind bot - sign recv_sign
proc send_pubm {nick uhost hand chan text} {
set cmd "pubm"
send_across $cmd $chan $nick $text
}
bind pubm - * send_pubm
proc recv_pubm {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \<[lindex $arg 2]\> [lrange $arg 3 end]"
}
bind bot - pubm recv_pubm
proc send_action {nick uhost hand chan keyw text} {
send_across "act" $chan $nick $text
}
bind ctcp - "ACTION" send_action
proc recv_action {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00306\* [lindex $arg 2] [lrange $arg 3 end]\003"
}
bind bot - act recv_action
proc send_join {nick uhost hand chan} {
send_across "join" $chan $nick\($uhost\) "dummy"
send_across "names" $chan $nick "dummy"
}
bind join - * send_join
proc recv_join {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00307\*** Joins [lindex $arg 2]\003"
# putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00307\*** [lindex $arg 2] has joined channel [lindex $arg 0]\003"
}
bind bot - join recv_join
proc send_part {nick uhost hand chan arg} {
send_across "part" $chan $nick ""
}
bind part - * send_part
proc recv_part {frm_bot command arg} {
putserv "PRIVMSG [lindex $arg 0] :\[[lindex $arg 1]\] \00310\*** [lindex $arg 2] has left channel [lindex $arg 0]\003"
}
bind bot - part recv_part
putlog "relay 1.0.0 by: cl00bie <cl00bie@sorcery.net>"
Thanks for all your help, I'm embarrassed that i forgot about the other script.iamdeath wrote:Ok i came on your network and checked that you're not using the same tcl on both bots.. the bot on [00:22] -PSX.IS.EU.GameSurge.net-is perfect showing part/signs but the bot on the other network EnterTheGame server does'nt show part/sign. That clearly shows that you're not sharing the same Relay.tcl in both the bots fix it. my edited version is fine
thanks
iamdeath
Code: Select all
[04:23] Tcl error [send_pubm]: bot is not on the botnet
[04:24] Tcl error [send_part]: bot is not on the botnet
[04:24] Tcl error [send_join]: bot is not on the botnet
[04:24] Tcl error [send_part]: bot is not on the botnet
.vbottree
[04:26] #dc|Hommie# vbottree
dc|bot|gs (1.6.18.0)
`--dc|bot|et (1.6.18.0)
Average hops: 1.0, total bots: 2
Code: Select all
set server1List "enter GameSurge dc|bot|et"
set server2List "gamesurge EnterTheGame dc|bot|gs"
Code: Select all
set server1List "gamesurge EnterTheGame dc|bot|gs"
set server2List "enter GameSurge dc|bot|et"
Code: Select all
<(LinkMK> [02:50] Tcl error [send_pubm]: bot is not on the botnet
<(LinkMK> [02:51] Tcl error [send_join]: bot is not on the botnet
Code: Select all
set server1List "dal \00303DALnet\003 Beirut"
set server2List "Beirut \00304Beirut\003 Dalnet"
iamdeath wrote:hey sorry for the late reply I have a very good suggestion for you, here is the TCL by DrN:
TCL
It has all the features builtin, the one I have given you has color features too. So it has got some options if you want modes to be shown or kicks to be shown or bla bla you can do it easily.
Take a look use it and let me know
iamdeath