2 # links : which are active
3 # a complete list of currently connected linked nodes
5 # Created by Iain Philipps G0RDI, based entirely on
6 # who.pl, which is Copyright (c) 1999 Dirk Koopman G1TLH
7 # and subsequently plagerized by K1XX.
18 push @out, " Ave Obs Ping Next Filters";
19 push @out, " Callsign Type Started RTT Count Int. Ping Iso? In Out PC92?";
21 foreach $dxchan ( sort {$a->call cmp $b->call} DXChannel::get_all_nodes ) {
22 my $call = $dxchan->call();
23 next if $dxchan == $main::me;
24 my $t = cldatetime($dxchan->startt);
26 my $name = $dxchan->user->name || " ";
27 my $obscount = $dxchan->nopings;
28 my $lastt = $dxchan->pingint - ($nowt - $dxchan->lastping);
29 my $pingint = $dxchan->pingint;
30 my $ping = $dxchan->is_node && $dxchan != $main::me ? sprintf("%8.2f",$dxchan->pingave) : "";
31 my $iso = $dxchan->isolate ? 'Y' :' ';
32 my ($fin, $fout) = (' ', ' ');
33 unless ($dxchan->do_pc92) {
35 if ($f = $dxchan->inroutefilter) {
36 $fin = $dxchan->inroutefilter =~ /node_default/ ? 'D' : 'Y';
38 if ($f = $dxchan->routefilter) {
39 $fout = $dxchan->routefilter =~ /node_default/ ? 'D' : 'Y';
42 $sort = 'ANEA' if $dxchan->is_aranea;
43 $sort = "DXSP" if $dxchan->is_spider;
44 $sort = "CLX " if $dxchan->is_clx;
45 $sort = "DXNT" if $dxchan->is_dxnet;
46 $sort = "AR-C" if $dxchan->is_arcluster;
47 $sort = "AK1A" if $dxchan->is_ak1a;
48 my $pc92 = $dxchan->do_pc9x ? 'Y' : '';
49 push @out, sprintf "%10s $sort $t$ping $obscount %5d %5d $iso $fin $fout $pc92", $call, $pingint, $lastt;