my $user = $self->{user};
my $conn = $self->{conn};
my $call = $self->{call};
+ my $nopc39 = shift || 0;
- $self->finish();
+ $self->finish($nopc39);
$conn->send_now("Z$call|bye") if $conn; # this will cause 'client' to disconnect
$user->close() if defined $user;
$conn->disconnect() if $conn;
# is it for me or one of mine?
my $call = ($field[5] gt ' ') ? $field[5] : $field[2];
- if ($call eq $main::mycall || grep $_ eq $call, get_all_user_calls()) {
+ if ($call eq $main::mycall || grep $_ eq $call, DXChannel::get_all_user_calls()) {
# yes, it is
my $text = unpad($field[3]);
{
my $self = shift;
my $call = $self->call;
+ my $nopc39 = shift;
my $ref = DXCluster->get_exact($call);
- $self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op")));
+ $self->send_now("D", DXProt::pc39($main::mycall, $self->msg('disc1', "System Op"))) unless $nopc39;
# unbusy and stop and outgoing mail
my $mref = DXMsg::get_busy($call);
dbg('chan', "-> Z $call bye\n");
$conn->send_now("Z$call|bye"); # this will cause 'client' to disconnect
sleep(1);
- $conn->disconnect;
+ $conn->disconnect();
}
# handle incoming messages
if (defined $err && $err) {
if ($dxchan) {
- disconnect($dxchan);
+ $dxchan->disconnect;
}
return;
}
};
dbg('local', "Local::finish error $@") if $@;
- # disconnect users
+ # disconnect nodes
foreach $dxchan (DXChannel->get_all()) {
- next if $dxchan->is_ak1a;
+ next unless $dxchan->is_ak1a;
disconnect($dxchan) unless $dxchan == $DXProt::me;
}
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
- # disconnect nodes
+ # disconnect users
foreach $dxchan (DXChannel->get_all()) {
- next unless $dxchan->is_ak1a;
+ next if $dxchan->is_ak1a;
disconnect($dxchan) unless $dxchan == $DXProt::me;
}
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
- Msg->event_loop(1, 0.05);
DXUser::finish();
# close all databases