- # send out a pc50 on EVERY channel all at once
- if ($t >= $last_pc50 + $DXProt::pc50_interval) {
- $pc50s = pc50($main::me, scalar DXChannel::get_all_users);
- eph_dup($pc50s);
- $last_pc50 = $t;
- }
-
- foreach $dxchan (@dxchan) {
- next unless $dxchan->is_node;
- next if $dxchan->handle_xml;
- next if $dxchan == $main::me;
-
- # send the pc50
- $dxchan->send($pc50s) if $pc50s;
-
- # send a ping out on this channel
- if ($dxchan->{pingint} && $t >= $dxchan->{pingint} + $dxchan->{lastping}) {
- if ($dxchan->{nopings} <= 0) {
- $dxchan->disconnect;
- } else {
- DXXml::Ping::add($main::me, $dxchan->call);
- $dxchan->{nopings} -= 1;
- $dxchan->{lastping} = $t;
- $dxchan->{lastping} += $dxchan->{pingint} / 2 unless @{$dxchan->{pingtime}};
- }
- }
-
- }
-
- Investigate::process();
- clean_pc92_find();
-