perlFilter

2000
Digital Communications Conference – Orlando, USA
Intelligent Filtering of APRS IGATE Data
Streams

This page contains a link to my paper for the 2000 Digital Communications
Conference, as well as containing the companion software. This page also
contains the documentation for this software.


  • APRS Filtering Paper – WORD Format
  • Software – TAR’ed and GZIP’ed

    To run

        ./perlFilter.pl VKZL.conf

    This will run the software interactively.

    Of course you may want to edit the CONF file first.

     

    VKZL.conf – Configuration file
    for perlFilter

    # @prefix is a list of callsign ranges that this
    filter will allow through


    # regardless of their present position. For instance
    @prefix = ("VK","ZL")


    # will let throgh VK2TDS and ZL1AMW if they are in
    their home countries or

    # if they are within range of an IGATE in ROME or
    MIAMI.


    #

    # More prefixes may be added creating a line such
    as 


    #        
    @prefix = ("W","AA","N7","VE");

    @prefix = ("VK","ZL");

    # @grid_OK contains a list of all the GRID squares
    that are permitted through


    # the IGATE. Before letting a packet through it will
    decode the position from 


    # any of the formats understood by perlAPRS such
    as Lat/Long format into 

    # Grid Square format. 

    #

    # The software understands 2, 4 and 6 letter GRID
    SQUARES allowing quite 


    # precise filtering whilst maintaining quick processing.
    An example is the 


    # bizzare 

    #        
    @grid_OK = ("QE", "QF55", "QA55NX");


    #

    # For Australia and New Zealand, the following are
    used

    @grid_OK = ("OH","PH","QH","RH","OG","PG","QG","RG","OF",

       "PF","QF","RF","OE","PE","QE","RE","OD","PD","QD","RD");

    # The next few lines are tricky, and must not be mixed
    up. The lines with the


    # variables ending with _1 are for the UP-LINK, and
    those ending with _2 are 


    # DOWN-LINK. 

    #

    # The lines starting $telnet start a special version
    of TELNET that maintains


    # a connection to the server wherever possible. This
    version of TELNET is special

    # in that the PORT number is the first paramater,
    followed by one or more servers.


    # Whenever a connection is lost, the server will
    attempt to connect to the next


    # server. The software may not be elegant, but it
    works.


    #

    # Future versions will contain a server program in
    place of the TELNET program so that


    # the single IGATE can connect to it directly.

    #

    # The lines starting with $auth are the authorisation
    lines to be sent to the server. 


    # If you cannot work out how to make them work, you
    should not be using this software. 

    # The important thing to note is that my software
    will set $version to the current


    # version. Please do not edit this version of the
    line.

       $telnet_1 = "./myTelnet.pl 23 aprs.net
    second.aprs.net";


       $auth_1 = "user LUSER pass 12345 VERS
    $version\n\r\n";


       $telnet_2 = "./myTelnet.pl 10152 localhost";

       $auth_2 = "user LUSER pass 12345 VERS
    $version\n\r\n";