This is the new home of the egghelp.org community forum.
All data has been migrated (including user logins/passwords) to a new phpBB version.


For more information, see this announcement post. Click the X in the top right-corner of this box to dismiss this message.

help with this ping code

Help for those learning Tcl or writing their own scripts.
Post Reply
B
BhasIRC
Voice
Posts: 27
Joined: Sat Jan 02, 2010 7:05 am
Location: south africa
Contact:

help with this ping code

Post by BhasIRC »

hi guys..

ok look i have this ping script i hav downloaded it works fine for pc users but gives no reply for cell users it does ping he nick but does not give a reply could someone help me please here is the code

Code: Select all

### eggping.tcl v1.0.6, 27 December 2003
### by Graeme Donaldson
### (Souperman @ #eggdrop @ Undernet)
### Visit http://www.eggdrop.za.net/ for updates and other Tcl scripts.
###
### Lets your eggdrop listen for ping requests on channel or /msg
### Not the world's best script, but somebody asked for it. =)
###
### To use:
###  - Extract the files to your eggdrop scripts dir.
###  - Add a 'source scripts/eggping.tcl' to your eggdrop's config file.
###  - Edit the settings below if necessary, then .rehash your eggdrop.
### Anyone can now type request a ping from the bot using (defaults):
###  - !ping or !pingme on a channel, or
###  - /msg bot ping or /msg bot pingme
###
### Multiple triggers can be configured for both public and /msg requests.
### Can accept ping requests only from users with specific flags.
### Can reply to ping requests only from specific channels.
### Can ignore ping requests made on certain channels.
### Can calculate the ping reply in milliseconds (requires Tcl 8.3 or higher)
### Can tell the user what server the bot is currently on.
###
### History:
###
### 1.0.0 29-Mar-2002 First release.
### 1.0.1 01-Apr-2002 Removed a small bit of code which I'd used for debugging.
###                   Show website address when the script loads.
### 1.0.2 11-May-2003 Fixed calculation bug on some systems with Tcl 8.3+.
### 1.0.3 21-May-2003 Modified wording of bot's reply to make it clearer.
### 1.0.4 19-Nov-2003 Fixed another calculation bug.
###                   Added option to specify whether you want to show ping
###                    time in milliseconds (if Tcl version allows this).
###                   Made telling the user the bot's current server an option.
### 1.0.5 23-Nov-2003 Added an option to specify which channels to respond to
###                    ping requests on.
###                   Added an option to specify that ping requests only be
###                    accepted by users with certain flags.
###                   Removed a debugging message I had left behind from the
###                    previous version.
### 1.0.6 27-Dec-2003 Fixed a bug caused by come clients refusing to reply
###                    to a CTCP PING with a negative number.
################################################################################

### You can change these settings if you want ###

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

# If you want to restrict ping requests to users with certain flags, change this.
set pingreqdflags "-|-"

# If you only want the bot to respond to requests from specific channels,
# set them here, separated by spaces, e.g. "#foo #bar #baz".  Setting one
# or more channels here makes the bot ignore the disabled chans setting.
set pingenabledchans ""

# 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".
# This setting is meaningless if a specific list of channels have been given
# in the enabled chans setting.
set pingdisabledchans ""

# Do you want to calculate ping replies in milliseconds (1) or not (0)?
# Millisecond calculation only works on Tcl 8.3 and above, but you can safely
# leave this enabled, the script will detect your Tcl version and disable this
# if necessary.
set pingmilli 1


### YOU SHOULDN'T NEED TO EDIT ANYTHING BEYOND THIS POINT! ###
# Misc. stuff
set pingver "1.0.6"
set pingnver "100006"
putlog "Loading eggping.tcl $pingver by Souperman..."
if { ([info tclversion] < 8.3) && ($pingmilli == 1) } {
	set pingmilli 0
	putlog " eggping.tcl: warning: cannot calculate PINGs in milliseconds (requires Tcl 8.3 or higher). PINGs will be calculated in seconds."
}

# binds
foreach trigger [split $pingpubwords] { bind pub $pingreqdflags $trigger pingnickpub }
bind ctcr $pingreqdflags PING pingreply

# triggered by ping command on channel
proc pingnickpub {nick uhost hand chan text} {
	if {$::pingenabledchans != ""} {
		foreach channel [split $::pingenabledchans] {
			if {[string tolower $channel] == [string tolower $chan]} {
				global pingchan
				set pingchan $chan
				pingnick $nick
				return 1
			}
		}
		return 0
	} else {
		foreach channel [split $::pingdisabledchans] {
			if {[string tolower $channel] == [string tolower $chan]} {
				return 0
			}
		}
		global pingchan
		set pingchan $chan
		pingnick $nick
		return 1
	}
}

# called by pingnickpub or pingnickmsg, sends a CTCP PING to $nick.
proc pingnick {nick} {
	if {$::pingmilli} {
		putquick "PRIVMSG $nick :\001PING [expr {abs([clock clicks -milliseconds])}]\001"
	} else {
		putquick "PRIVMSG $nick :\001PING [unixtime]\001"
	}
}

# processes a CTCP PING reply.
proc pingreply {nick uhost hand dest key args} {
	global pingchan
	set pingnum [lindex $args 0]
	set pingserver [lindex [split $::server :] 0]
	# sanity check -- only processes the CTCP PING reply if it's value is a number
	if {[regexp -- {^-?[0-9]+$} $pingnum]} {
		if {$::pingmilli} {
			putquick "PRIVMSG $nick :You Have a ping reply of [expr {abs([expr [expr {abs([clock clicks -milliseconds])} - $pingnum] / 1000.000])}] seconds"
		} else {
			putquick "PRIVMSG $nick :You Have a ping reply of [expr [unixtime] - $pingnum] seconds"
		}
	}
}
putlog " Visit http://www.eggdrop.za.net/ for updates and other Tcl scripts."
putlog "Successfully loaded eggping.tcl $pingver by Souperman!"
B
BhasIRC
Voice
Posts: 27
Joined: Sat Jan 02, 2010 7:05 am
Location: south africa
Contact:

Post by BhasIRC »

sorted thanks to blake
c
claxie
Voice
Posts: 1
Joined: Mon Feb 09, 2015 5:38 pm

?

Post by claxie »

can we know how the script was fixed to reply to mobile phones irc apps for !ping request?

many thanks
Post Reply