Dla portów 14580 pracujących z javAPRSFilter jest czternaście kategorii filtrów. Spośród nich trzynaście dotyczy otwarcia kolejnego strumienia danych, a czternasty jest filtrem blokującym. Kolejne definicje (#1-13) wzajemnie się sumują, czyli ramka packetowa jest przekazana, kiedy spełnia choćby jedną kategorię. Natomiast filtr wykluczający #14 jest brany pod uwagę w pierwszej kolejności i powoduje zablokowanie danych, które w jakikolwiek sposób odpowiadają jego definicji. Aby otrzymywać jakiekolwiek dane na porcie 14580, trzeba uaktywnić choćby jeden filtr (#1-13). Według jego konfiguracji serwer będzie podawał nam dane. Po prostu, któryś z tych strumieni trzeba otworzyć. Inaczej, nic nie będzie do nas podawane, choć sami będziemy mogli podawać ramki na serwer.
Znaki wywoławcze muszą być wpisywane z uwzględnieniem małych i dużych liter.
javAPRSFilter - Copyright - Roger Bille SM5NRK | Składnia | Przykłady |
#1 Filtr zasięgu (promienia) - rFiltr zasięgu przepuszcza wszystkie stacje, ich pozycje, status, wiadomości itd. znajdujące się w podanym zasięgu (promieniu) od własnego położenia. Przepuszcza również wiadomości do stacji znajdujących się w granicach zasięgu i pozycje nadawcy, nawet jeśli on jest poza zasięgiem filtru. Jednocześnie może być użytych maksymalnie dziewięć filtrów zasięgu, aby objąć teren, który trudno opisać jednym okręgiem geometrycznym.lat/lon mogą zawierać jedną cyfrę po przecinku (może być użyta kropka lub przecinek) |
r/lat/lon/dist [r/lat1/lon1/dist1
[r/lat2/lon2/dist2]] Gdzie: r = komenda zasięgu lat = szerokość w stopniach. Ujemna dla Południa lon = długość w stopniach. Ujemna dla Zachodu dist = dystans w kilometrach od lat/lon |
r/55/-4/600 Przepuszcza cały ruch Wielkiej Brytanii r/37/-81/1500 Przepuszcza cały ruch zachodniej części USA |
#2 Filtr prefiksu - pFiltr prefiksu przepuszcza cały ruch na podstawie rdzenia, z jakim zaczyna się znak wywoławczy nadawcy.Rozszerzenia z gwiazdką nie mają w tym filtrze zastosowania. Filtr prefiksu obecnie (od wersji 1.4) funkcjonuje we filtrze #3 - b, ale dalej filtr #2 - p został zachowany dla kompatybilności z wcześniejszymi aplikacjami. |
p/p1/p2/p3... Gdzie: p = komenda prefiksu p# = Rdzeń prefiksu (rozpoczynający) |
p/K Przepuszcza cały ruch od stacji rozpoczynających się od K p/SP/F Przepuszcza cały ruch od stacji rozpoczynających się zarówno od SP, jak też F p/SM5NRK Przepuszcza cały ruch od stacji SM5NRK z jakimkolwiek SSID na końcu lub bez niego |
#3 Filtr kolegów - bFiltr kolegów przepuszcza cały ruch na podstawie dokładnego znaku stacji, z określonym SSID lub na podstawie początkowej części znaku.Dla rozszerzenia filtru o pozostałe elementy w znaku, należy zastosować gwiazdkę, np. SP3* dla wszystkich stacji zaczynających się od SP3. Jeśli chcemy otrzymywać wszystko od stacji z krótkim znakiem, jak np. SP1A, a wpisanie SP1A* powoduje przepuszczenie wielu innych stacji z sufiksami dwu i trzyliterowymi, to należy wpisać b/SP1A/SP1A-* |
b/call1/p1*/call2/p2*... Gdzie: b = komenda kolegów call# = Znak wywoławczy |
b/SM5NRK Przepuszcza cały ruch od SM5NRK bez SSID b/SM5NRK-5/SK5UM Przepuszcza cały ruch od SM5NRK-5 i od SK5UM b/SP3*/SR* Przepuszcza cały ruch od stacji zaczynających się od SP3 oraz SR |
#4 Filtr rodzaju (typu) - tFiltr rodzaju (typu) przepuszcza ruch w zależności od rodzaju zawartych informacji (wg identyfikatorów). Może być zdefiniowany więcej niż jeden rodzaj. |
t/type t/type/call/dist Gdzie: t = komenda typu type = jedna lub więcej następujących liter: p = Position packets o = Objects i = Items m = Message n = NWS Weather w = Weather t = Telemetry q = Query s = Status u = User-defined call = znak stacji lub obiektu dist = odległość w km względem znaku, aby przepuszczać ramki danego rodzaju |
t/p Przepuszcza cały ruch zawierający pozycje t/w Przepuszcza cały ruch zawierający pogodę. Dla obiektów pogodowych bez pozycji korespondujący z nimi beacon pozycji również będzie przesłany, jeśli później się pojawi. t/mos Przepuszcza wszystkie wiadomości (m), obiekty (o) i status (s) t/p/SM5NRK/500 Przepuszcza wszystkie ramki z pozycją w odległości 500 km względem ostatniej znanej pozycji SM5NRK |
#5 Filtr symboli - sFiltr symboli przepuszcza ruch na podstawie symboli używanych przez stacje. |
s/pri/alt/over Gdzie: s = komenda symbolu pri = symbole w tabeli podstawowej (primary table) alt = symbole w tabeli alternatywnej (alternate table) over = wykładnik (overlay character) - rozróżnia małe i duże litery |
s/-> Przepuszcza wszystkie symbole domu i samochodu (tabeli podstawowej) s//# Przepuszcza wszystkie digi z wykładnikiem lub bez niego s//#/T Przepuszcza wszystkie digi z wykładnikiem litery T |
#6 Filtr digi - dFiltr digi przepuszcza wszystkie ramki, które zostały powtórzone przez konkretny digi. Trzeba pamiętać, że ramki mogą przechodzić różnymi trasami, zanim dojdą do APRS-IS i mogą być przekazywane inną drogą niż zdefiniowana. Ramki są na wiele sposobów odfiltrowywane i usuwane jako duplikaty.Można wpisać jeden lub więcej digi, jako każdy lub razem. Można również użyć gwiazdki * dla rozszerzenia początkowej części znaków. |
d/digi1/digi2... Gdzie: d = komenda digi digi# = znak digi |
d/SM5NRK-2 Przepuszcza wszystkie ramki przekazane przez SM5NRK-2 d/SM5NRK-2/SK5UM Przepuszcza wszystkie ramki przekazane przez SM5NRK-2 lub SK5UM d/SR*/SP2*/SP3* Przepuszcza wszystkie ramki, do których został wstawiony znak przekazującego digi, zaczynający się od SR, SP2 lub SP3 |
#7 Filtr obszaru (area) - aFiltr obszaru działa tak samo, jak filtr zasięgu, ale jest zdefiniowany jako prostokąt współrzędnych. Współrzędne można również określić jako współrzędne narożników prostokąta - lewego górnego i prawego dolnego. Współrzędne nie mogą zawierać części dziesiętnych. Południe i Zachód są ujemne. Można jednocześnie zdefiniować do dziewięciu filtrów obszaru.lat/lon mogą zawierać jedną cyfrę po przecinku (może być użyta kropka lub przecinek) |
a/latN/lonW/latS/lonE Gdzie: a = komenda obszaru (area) latN = granica szerokości od Północy (-90 do 90) lonW = granica długości od Zachodu (-180 do 180) latS = granica szerokości od Południa (-90 do 90) lonE = granica długości od Wschodu (-180 do 180) |
a/50/-130/20/-70 Przepuszcza cały ruch z USA a/54.9/14/52/24 a/52/14.7/50.6/16 a/52/16/50/24.2 a/50/18/49/23.2 Taka kombinacja przepuszcza ruch z obszaru prawie całej Polski |
#8 Filtr konstrukcji q - qFiltr konstrukcji q działa na podstawie konstrukcji q użytej na serwerze APRS. Aby dowiedzieć się więcej nt. q, zajrzyj na http://www.aprs-is.net/q.aspx |
q/con/ana Gdzie: q = komenda konstrukcji q con = lista konstrukcji q do przepuszczenia (rozpoznaje duże i małe litery) ana = analiza na podstawie konstrukcji q i = Przepuszcza pozycje z bramek internetowych zidentyfikowanych jako qAr lub qAR. |
q/C Przepuszcza cały ruch z qAC q/rR Przepuszcza cały ruch z qAr lub qAR q//i Przepuszcza wszystkie pozycje od bramek zidentyfikowanych w innych ramkach przez qAr lub qAR |
#9 Filtr obiektów - oFiltr obiektów działa tak samo, jak filtr kolegów, ale opiera się na nazwach obiektów zamiast na znaku wywoławczym wysyłającego. |
o/name1/n2*/name3/n3*... Po więcej informacji zobacz na filtr kolegów #3. |
|
#10 Filtr wg mojego zasięgu - mFiltr wg mojego zasięgu przepuszcza stacje i obiekty znajdujące się w odległości określonej względem mojej pozycji. Punktem odniesienia jest położenie stacji o znaku, jakiego używasz łącząc się z serwerem. Jest to przydatne dla stacji mobilowych z łączem internetowym. Przesyłane będą stacje lokalne względem obecnego położenia.Uwaga: Filtr nie będzie działał, jeśli nie została wysłana pozycja dla znaku i SSID, z którym zalogowalismy się na serwerze. |
m/dist Gdzie: m = komenda mojego zasięgu dist = odległość w kilometrach od lat/lon. |
m/500 Przepuszcza cały ruch w zasięgu 500 km od mojej pozycji. |
#11 Filtr wg zasięgu kolegi - fFiltr wg zasięgu kolegi działa podobnie, jak filtr wg mojego zasięgu, z wyjątkiem tego, że można zdefiniować do dziewięciu znaków z SSID, w oparciu o których pozycje, zasięg będzie określany. Jest to ruchomy filtr, zatem opiera się on na ostatniej znanej pozycji stacji o podanym znaku-SSID.Uwaga: Filtr nie będzie działał, jeśli nie została wysłana pozycja stacji o określonym znaku-SSID. |
f/call/dist Gdzie: f = komenda zasięgu kolegi (friend range command) call = znak wywoławczy, którego pozycja będzie punktem odniesienia dla zasięgu dist = odległość w kilometrach od lat/lon. |
f/SM5NRK/500 Przepuszcza cały ruch w zasięgu 500 km od ostatniej pozycji SM5NRK |
#12 Filtr wejścia (Entry) - eFiltr wejścia przepuszcza ramki, w których znajduje się konkretny znak-SSID następujący bezpośrednio po konstrukcji q.Filtr pozwala na użycie rozszerzenia z pomocą gwiazdki *. |
e/call/call/call*... | e/SR3WXA Przepuszcza wszystkie ramki, które weszły do APRS-IS przez IGate SR3WXA (należy pamiętać o usuwaniu duplikatów w APRS-IS; ramka wchodzi przez wiele IGate'ów i tylko jedna kopia jest zachowana) e/SR3* Przepuszcza wszystkie ramki, które weszły przez IGate'y o znakach zaczynających się od SR3 |
#13 Filtr adresu przeznaczenia (Unproto) - uFiltr przepuszcza ramki, w których znajduje się konkretny adres przeznaczenia (Unproto).Filtr pozwala na użycie rozszerzenia z pomocą gwiazdki *. |
u/text/text/te*... | u/APOTC1 Przepuszcza wszystkie ramki, które zostały wysłane przez Open Tracker + (patrz adres przeznaczenia z zakodowaną wersją programu) u/APOT* Przepuszcza wszystkie ramki wysłane przez Open Tracker, Tracker 2 itp. |
#14 Filtr wykluczeniaWszystkie powyższe filtry mogą zostać objęte wykluczeniami. Postawienie minusa przed danym filtrem spowoduje wykluczenie. Jakikolwiek raport odpowiadający wykluczeniu nie zostanie przepuszczony. Filtry wykluczenia będą brane pod uwagę w pierwszej kolejności, stąd jeżeli dany raport odpowiada w jakikolwiek sposób wykluczeniu nie będzie przepuszczany bez względu na inne definicje. |
a/50/-130/20/-70 -b/CW* Filtr obszaru (a) określa, aby przepuścić cały ruch z US. Filtr -b określa, że należy wykluczyć każdą stację, która zaczyna się od CW. a/50/-130/20/-70 -s/>j Filtr obszaru (a) określa, aby przepuścić cały ruch z US. Filtr -s określa, że należy wykluczyć każdą stację, która występuje z symbolem samochodu lub jeepa. |
W celu zdefiniowania filtrów należy:
Przykład:
To: SERVER Text: filter r/40/-100/500 t/m s/>j
Wysłanie do serwera wiadomości o treści filter?, zwróci do
nas obecną definicję.
Wysłanie do serwera wiadomości o treści filter default, przyśle do nas
domyślną definicję filtrów na danym porcie.