#
# XML Ping handler
#
-# $Id$
+#
#
# Copyright (c) Dirk Koopman, G1TLH
#
use DXDebug;
use DXProt;
use IsoTime;
-use Investigate;
use Time::HiRes qw(gettimeofday tv_interval);
-use vars qw($VERSION $BRANCH @ISA %pings);
-$VERSION = sprintf( "%d.%03d", q$Revision$ =~ /(\d+)\.(\d+)/ );
-$BRANCH = sprintf( "%d.%03d", q$Revision$ =~ /\d+\.\d+\.(\d+)\.(\d+)/ || (0,0));
-$main::build += $VERSION;
-$main::branch += $BRANCH;
-
+use vars qw(@ISA %pings);
@ISA = qw(DXXml);
%pings = (); # outstanding ping requests outbound
ot=>$self->{t}
);
$dxchan->send($rep->toxml);
+ if ($dxchan->{outgoing} && abs($dxchan->{lastping} - $main::systime) < 15) {
+ $dxchan->{lastping} += $dxchan->{pingint} / 2;
+ }
} else {
handle_ping_reply($dxchan, $self->{o}, $self->{ot}, $self->{oid});
}
{
my ($from, $via) = @_;
- if (my $ivp = Investigate::get($from, $via)) {
- $ivp->handle_ping;
- } else {
- my $user = DXUser->get_current($from);
- if ($user) {
- $user->set_believe($via);
- $user->put;
- }
+ my $user = DXUser->get_current($from);
+ if ($user) {
+ $user->set_believe($via);
+ $user->put;
}
}
1;