[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