HamBSD Manual Pages


Manual Page Search Parameters

APRSIS-FILTER(7) Miscellaneous Information Manual APRSIS-FILTER(7)

aprsis-filter
APRS-IS Filter Commands

filter default
filter [[-]r/lat/lon/dist] [[-]p/aa[/bb[/..]]] [[-]b/call1[/call2[/..]]] [[-]t/poimqstunw] [[-]t/poimqstuw/call/dist] [[-]s/pri[/alt[/over]]] [[-]d/digi1[/digi2[/..]]] [[-]a/lat1/lon1/lat2/lon2] [[-]e/call1[/call2[/..]]] [[-]g/call1[/call2[/..]]] [[-]u/unproto1[/unproto2[/..]]] [[-]q/con[/I]] [[-]m/dist] [[-]f/call/dist] [[-]o/obj1[/obj2[/..]]] [[-]os/obj1[/obj2[/..]]]

APRS-IS servers typically allow for a client, like aprsisd(8), to specify filters that will restrict the set of packets passed to the client.

When no filter is specified, a user-defined filter port will pass messages to the client and any gated station. Position reports for the sender of those messages will also be passed. Multiple filters may be specified and a packet will be passed if any filter matches, and no filter excludes it. Filters can exclude packets by prefixing a filter parameter with a hyphen. Exclusion does not affect the default passing of messaging packets or their associated position reports.

For example, to get all stations within 200 km of my station, except stations with the prefix of MW:

filter m/200 -p/MW

The server-side filter uses decimal degrees for latitude and longitude (note that this is not degrees and decimal minutes). Use negative values for west and south, and positive values for north and east. The command "filter default" resets the filter to the predefined filter for that port.

filter [-]r/lat/lon/dist

Passes position reports and objects within dist kilometers from the given lat and lon. Up to 9 range filters can be defined at the same time. Messages addressed to the stations in range are also passed.

filter [-]p/aa[/bb[/..]]

Passes all packets where the AX.25 source address starts with aa, bb, etc. At least one prefix must be defined, and multiple can be defined by seperating each by a slash (/).

filter [-]b/call1[/call2[/..]]

Passes all packets where the AX.25 source address is exactly call1, call2, etc. Callsigns specified may contain an asterisk (*) as a wildcard.

filter [-]t/poimqstunw | [-]t/poimqstuw/call/dist

Passes all packets based of specified types. At least one type must be specified, and multiple types can be specified. The types are:

p
Position Reports
o
Object Reports
i
Item Reports
m
Messages
q
Queries
s
Status Reports
t
Telemetry
u
User-defined Types
n
NWS format messages and objects
w
Weather Reports

The second form of this filter allows for the filter to be limited to only passing those packets that match one of the selected types, and are within dist kilometers of call. Note that the weather report filter will also pass position reports for stations sending positionless weather reports, and that it is not possible to specify NWS format messages and objects when restricting by location.

filter [-]s/pri[/alt[/over]]

Passes all position packets matching either pri from the primary symbol table, alt from the alternate symbol table, and optionally with over overlay. To specify a slash (/) character for any option of this filter, use a verical bar (|) instead and this will be translated by the server software.

filter [-]d/digi1[/digi2[/..]]

Passes all packets that have been digipeated by digi1, digi2, etc. Callsigns specified may contain an asterisk (*) as a wildcard.

filter [-]a/lat1/lon1/lat2/lon2

Passes all position reports and objects with a square area defined by the north-western-most corner (lat1 and lon1) and the south-eastern-most corner (lat2 and lon2). Up to 9 area filters can be defined at the same time.

filter [-]e/call1[/call2[/..]]

Passes all packets with the specified callsigns immediately following the q construct. Callsigns specified may contain an asterisk (*) as a wildcard.

filter [-]g/call1[/call2[/..]]

Passes all message packets with the specified callsigns (optionally with an SSID) as the addressee of the message. Callsigns specified may contain an asterisk (*) as a wildcard.

filter [-]u/unproto1[/unproto2[/..]]

Passes all packets with the specified callsigns (optionally with an SSID) in the AX.25 destination address field of the packet (also known as the to call or the unproto call).

filter [-]q/con[/I]

Passes all packets with specified q constructs in the path. Only the last character of the construct should be specified. Multiple constructs may be specified.

qAC
Packet was received from the client directly via a verified connection. The callsign following this construct is the server's callsign.
qAX
Packet was received from the client directly via an unverified connection. The callsign following this construct is the server's callsign.
qAU
Packet was received from the client directly via a UDP connection. The callsign following this construct is the server's callsign.
qAo
Packet was received on a client-only port, the AX.25 source address does not match the login, and the packet contains either a ,I or qAR construct where the indicated IGate matches the login. The callsign following this construct is the callsign of the IGate.
qAO
Packet was received directly from a receive-only IGate from RF. The callsign following this construct is the callsign of the IGate.
qAS
Packet was generated by a server. The callsign following this construct is the login or IP address of the first identifiable server.
qAr
Packet was received indirectly from an IGate using the ,I construct. The callsign following this construct is the callsign of the IGate.
qAR
Packet was received directly via a verified connection by from an IGate from RF. The callsign following this construct is the callsign of the IGate.
qAZ
Packet was generated by the client/server and should not be propagated. The callsign following this construct is the callsign of the generating client/server.
qAI
Packet should be traced. Each server adds its identification to the path. The callsign following this construct is the callsign of the originating station.

con may be left empty, and instead specifying an additional /I will pass all position packets from IGates identified in other packets by qAr or qAR.

filter [-]m/dist

Passes position reports and objects within dist kilometers of the last reported position of the logged in client. Messages addressed to the stations in range are also passed.

filter [-]f/call/dist

Passes position reports and objects within dist kilometers of the last reported position of call. Messages addressed to the stations in range are also passed.

filter [-]o/obj1[/obj2[/..]] | os/obj1[/obj2[/..]]

Passes objects with the exact name of obj1, obj2, etc. Names specified may contain an asterisk (*) as a wildcard. To specify an asterisk, instead use tilde (~). To specify a slash (/), instead use vertical bar (|). These will be converted by the server software.

In the second form of this filter, os/..., this is a strict object filter where object names are always 9 characters and item names are 3 to 9 characters. There can only be one strict object filter and it must be specified at the end of the filter line.

aprsisd(8)

This manual page was written for the HamBSD project by Iain R. Learmonth <irl@hambsd.org> for the public domain.
May 8, 2020 HamBSD-current