15 okt 2010 kl. 17.42 skrev JR Richardson: > On Fri, Oct 15, 2010 at 10:22 AM, Fred Posner <f...@teamforrest.com> wrote: >> Hey JR... >> >> I use this: >> >> #! /usr/bin/perl -w >> use IO::Socket; >> use POSIX 'strftime'; >> >> my ($msg,$remotehost,$callid,$socket,$date,$branch,$localip,$dest); >> >> $remotehost = $ARGV[0] >> or die "FAIL \(no host defined\)\n"; >> >> if ($ARGV[1]) { >> $remoteport = $ARGV[1]; >> } else { >> $remoteport = "5060"; >> } >> >> if ($ARGV[2]) { >> $localip = $ARGV[2]; >> } else { >> $localip = "127.0.0.1"; >> } >> >> if ($ARGV[2]) { >> $dest = $ARGV[3]; >> } else { >> $dest = "ping"; >> } >> >> $socket = IO::Socket::INET->new ( >> PeerAddr => $remotehost, >> PeerPort => $remoteport, >> Proto => 'udp', >> ) or die "FAIL Could not create socket: $!n"; >> >> $callid .= ('0'..'9', "a".."f")[int(rand(16))] for 1 .. 32; >> $date = strftime('%a, %e %B %Y %I:%M:%S %Z',localtime()); >> $branch="z9hG4bk" . time(); >> >> my $packet = qq(OPTIONS sip:$remotehost SIP/2.0 >> Via: SIP/2.0/UDP $localip:$remoteport;branch=$branch >> From: <sip:$de...@$localip> >> To: <sip:$remotehost> >> Contact: <sip:$de...@$localip >> Call-ID: $call...@$localip >> CSeq: 102 Options >> User-Agent: sipcheck.pl >> Date: $date >> Allow: ACK, CANCEL >> Content-Length: 0 >> ); >> >> >> print $socket $packet; >> >> eval { >> local $SIG{ALRM} = sub { die }; >> alarm 5; >> my $sock_addr = recv($socket,$msg,190,0); >> alarm 0; >> 1; >> } or die("FAIL\n"); >> >> if ($msg) { >> print "UP\n"; >> print "response is $msg\n"; >> } else { >> print "FAIL no msg received\n"; >> } >> close($socket); >> >> >> ---fred >> http://qxork.com > > Thanks Fred, this works fine, I like the response, you get more info > than the 'kamctl ping". > > I'm looking more for a utility that I can run in the background and > graph latency, that gives me specific time value so I can dump into > MRTG. > > Any ideas?
JR, if you don't already know SIPSAK, go download it. It's what I use in Nagios and many other scripts. Nils has done a great job with it. /O _______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users