Code Library
Home Submit Free Hosting Link To Us Contacts

TCL Eggdrop ping

TCL Eggdrop ping TCL TCL Eggdrop ping Download (.zip)



### eggping.tcl v1.0.1, 1 April 2002
### by Graeme Donaldson
###  - !ping or !pingme on a channel, or
###  - /msg bot ping or /msg bot pingme

# Public triggers, seperated by spaces.
set pingpubwords "!ping !pingme"

# /msg triggers, seperated by spaces.
set pingmsgwords "ping pingme"

# If there are channels where you don't want the bot to listen for !ping
# requests, set them here, seperated by spaces, e.g. "#lame #lamer #lamest"
set pingdisabled ""


### YOU SHOULDN'T NEED TO EDIT ANYTHING BEYOND THIS POINT! ###
set pingver "1.0.1"
set pingnver "100001"
putlog "Loading eggping.tcl $pingver by Souperman..."
if {[info tclversion]<8.3} {
        set pingmethod 0
        putlog " eggping.tcl: Tcl [info patchlevel] detected; using normal ping."
} else {
        set pingmethod 1
        putlog " eggping.tcl: Tcl [info patchlevel] detected; using millisecond ping."
}
foreach trigger [split $pingpubwords] { bind pub - $trigger pingnick }
foreach trigger [split $pingmsgwords] { bind msg - $trigger pingnick }
bind ctcr - PING pingreply
proc pingnick {nick host hand chan {arg ""}} {
        global pingmethod pingdisabled
        foreach channel [split $pingdisabled] {
                if {[string tolower $channel] == [string tolower $chan]} {
                        return
                }
        }
        if {$pingmethod==0} {
                putquick "PRIVMSG $nick :\001PING [unixtime]\001"
        } else {
                putquick "PRIVMSG $nick :\001PING [clock clicks]\001"
        }
        return 1
}
proc pingreply {nick host hand dest key args} {
        global pingmethod server
        set pingnum [lindex $args 0]
        set pingserver [lindex [split $server :] 0]
        if {![regexp -- {[^0-9]} $pingnum]} {
                if {$pingmethod==0} {
                        puthelp "NOTICE $nick :Ping reply from $pingserver: [duration [expr [unixtime] - $pingnum]]"
                } else {
                        puthelp "NOTICE $nick :Ping reply from $pingserver: [expr [expr [clock clicks] - $pingnum] / 1000.000] seconds"
                }
                return 0
        }
}
putlog " Visit http://www.eggdrop.za.net/ for updates and other Tcl scripts."
putlog "Successfully loaded eggping.tcl $pingver by Souperman!"




  • TCLEggdrop ping


Tatet