-# $Id: Ping.pm,v 1.4 2006-06-21 16:26:29 mike Exp $
+# $Id: Ping.pm,v 1.11 2006-09-13 16:29:55 mike Exp $
# See the "Main" test package for documentation
my $pod = $irspy->pod();
$pod->callback(ZOOM::Event::CONNECT, \&connected);
+ $pod->callback("exception", \¬_connected);
my $err = $pod->wait($irspy);
return 0;
}
-sub connected {
- my($conn, $irspy, $rs, $event) = @_;
+sub connected { maybe_connected(@_, 1) }
+sub not_connected { maybe_connected(@_, 0) }
+sub maybe_connected {
+ my($conn, $irspy, $rs, $event, $ok) = @_;
+
+ $irspy->log("irspy_test", $conn->option("host"),
+ ($ok ? "" : " not"), " connected");
my $rec = $irspy->record($conn);
- $irspy->log("irspy_test", $conn->option("host"), " connected");
- ### Note the successful connection in $rec
+ $rec->append_entry("irspy:status", "<irspy:probe ok='$ok'>" .
+ $irspy->isodate(time()) . "</irspy:probe>");
+ $conn->option(pod_omit => 1) if !$ok;
return 0;
}