X-Git-Url: http://dxcluster.org/gitweb/gitweb.cgi?a=blobdiff_plain;f=cmd%2Ftalk.pl;h=fa7ade223f94594e0a476c7bb859601ae14800d9;hb=f8e8ba13693b1a7685601f1847cb8e6493604ed9;hp=2d647d0f68a635291149884fe504df29307ad83e;hpb=6aca4e461103870de99b0ce452f21cf7fedeb54b;p=spider.git diff --git a/cmd/talk.pl b/cmd/talk.pl index 2d647d0f..fa7ade22 100644 --- a/cmd/talk.pl +++ b/cmd/talk.pl @@ -24,11 +24,13 @@ if ($argv[1] eq '>') { } my $call = $via ? $via : $to; -my $ref = DXCluster->get($call); +my $ref = DXCluster->get_exact($call); # try an exact call +$ref = DXCluster->get($call) unless $ref; # try one ignoring SSID +$ref = DXChannel->get($call) unless $ref; # is it local? # if we haven't got an explicit via and we can't see them, try their node unless ($ref || $via) { - my $user = DXUser->get($call); + my $user = DXUser->get_current($call); $ref = DXCluster->get_exact($user->node) if $user; if ($ref) { $via = $user->node; @@ -47,7 +49,7 @@ if ($dxchan && $dxchan->is_user) { } else { $line =~ s/\^//og; # remove any ^ characters my $prot = DXProt::pc10($from, $to, $via, $line); - DXProt::route($via?$via:$to, $prot); + DXProt::route(undef,$via?$via:$to, $prot); Log('talk', $to, $from, $via?$via:$main::mycall, $line); }