[aprssig] RE: APRS server help

AE5PL Lists HamLists at ametx.com
Thu Sep 15 07:11:40 EDT 2005


aprsd does not support server filters.  APRS servers will disconnect you
for a number of reasons, not the least of which is your ISP doing router
maintenance.

You have errmode set to 'return' yet you are not checking for an errmsg.
I am not sure that while(<$t>) will actually drop out upon error.  You
should increase your timeout to 30 seconds because the server sends
comment lines (prefixed with #) every 20 seconds as a keep alive.  If
you do have an errmsg, close the connection and reopen it and you should
be fine.  You can also set errmode to call a subroutine to do this.

Set Telnetmode to 0 so strange characters don't confuse the Telnet
module.

For clarity to the server sysop, I would recommend using something like
the following for your login line (this also negates having to use two
lines to send the filter):
print "user VK4TEC-10 pass xxxx vers Perl 1.0 filter
p/PCSAT/PC2/W3AD/RS0/ISS d/RS0ISS-3/PCSAT2/W3ADO-1\n";

73,

Pete Loveall AE5PL
mailto:pete at ae5pl.net 

> -----Original Message-----
> From: Andrew Rich
> Posted At: Thursday, September 15, 2005 2:36 AM
> Subject: [aprssig] RE: APRS server help
> 
> I have aprsd working, how do I send forward a filter string ?
> 
> -----Original Message-----
> From: Andrew Rich [mailto:vk4tec at tech-software.net]
> Sent: Thursday, 15 September 2005 5:02 PM
> To: TAPR APRS Mailing List
> Subject: APRS server help
> 
> It all works well, but after a few days, it just stops.
> 
> The perl script does not bomb out.
> 
> When I leave the perl script as it it, and look on 
> second.aprs.net, it says i am disconnected.
> 
> Is there anyting more reliable I can use ?
> 
> I just want to log on and log to a file ?
> 
> (after sending forward a filter )
> 
> #!/usr/bin/perl
> use Net::Telnet;
> my $host = "second.aprs.net";
> my $user = "";
> my $password = "";
> my $prompt = "";
> my (@data, $line);
> my $t = new Net::Telnet(Timeout => '5',port => '14580'); 
> $t->errmode('return');
> $t->Net::Telnet::open($host);
> sleep 5; 
> print $t "user VK4TEC-10 pass xxxx\n";
> sleep 3;
> print $t "# filter p/PCSAT/PC2/W3AD/RS0/ISS
d/RS0ISS-3/PCSAT2/W3ADO-1\n"; 
> while (<$t>) {
>  $date = `date +%d/%m/%y" "%H:%M:%S`;
>  chop $date;
>  # print $date."\n";
>  open (tnc, ">> /data/vkdata.txt"); 
>  print tnc "$date ";
>  print tnc $_ ;
>  close(tnc);
> }
> $t->close();
> 
> Andew VK4TEC




More information about the aprssig mailing list