Home Page

Server Adjunct

javAPRSSrvr 4.0 and above supports server adjuncts add-ons. This can be any application, but the primary use foreseen is for it to be used with a filter (subscription) application. This interface is open to anyone who wishes to write a server adjunct capability to javAPRSSrvr. Currently there is one server adjunct available: APRSFilter.

This interface is only used with output restricted ports. The interface basically works as follows:

For any packets which would normally be dropped going to the client on a particular port type, a method is now called which will allow the adjunct software to say "send it to the client anyway". This is known as additive filtering. For instance, if the adjunct software is configured to filter packets for a particular region and all messages, the client will see all messages and associated posits worldwide PLUS all packets originated within the specified region.

The filtering is done on a connection basis. The sysop can define default filters for ports via parameters in the config file (see the server adjunct software manual for details). The client can specify dynamic filters as follows:

Via the login. For instance:

user mycall pass -1 vers testsoft 1.1.1 filter r/36/-75/2400

Via a comment line. For instance:

# filter r/36/-75/2400

Via a sequenced APRS message (message requiring an ack):

MyClient>APRS::SERVER   :filter r/36/-75/2400

For the message method to work with most clients, the server's call must be all upper case or the client must send the message to SERVER. javAPRSSrvr will ack the client's message and send a message to the client with the result of the setFilter method.

Only the login method is available for Read-only Ports and Filtered History Ports.

Filtering is only one application that this could be used for. This basically opens up the server to other processing on packets.