Geändert von dataflash (06.02.2013 um 18:55 Uhr)
Kleine Info zwischendurch:
FMS funktioniert bei mir wunderbar (naja, seit ca. 20 Minuten). Hier mal die Einstellungen die ich in der monitord.xml verwende:
HTML-Code:<module type="fms"> <algorithmus> 1 </algorithmus> <syncbits> 12 </syncbits> <crc-check> 1 </crc-check> <maxerrors> 0 </maxerrors> </module>
Nach dem ich nun ca. 10 Stunden FMS dekodiert habe, hier das Ergebnis:
Von ca. 350 Stati wurden 75% korrekt ausgewertet.
Ich habe schon versucht einen Filter einzubinden. Allerdings bislang ohne Erfolg.
Hast du die Änderungen schon vorgenommen? Wenn ja, ändert sich was an den Texten?
Wer Filterskripte einbinden will, muss das bereits in der Config vor dem Kompilieren machen.
Siehe:
http://www.funkmeldesystem.de/foren/...65&postcount=5
Geändert von matt (07.02.2013 um 12:14 Uhr)
Ich bekomme leider keine Alarmierungen, die länger sind als 120 Zeichen rein.
Bedeutet, die Alarmierungen werden nicht abgeschnitten, sondern die Alarmierungen sind einfach kürzer.
Sobald ich mal eine über 150 Zeichen reinbekomme, gebe ich bescheid, aber die letzte Alarmierung in solch einer Länge war im November.
Um die Skripts auszuführen bin so vorgegangen wie in dem Link beschrieben:
- Zunächst die Pakete für LUA installieren
- ./configure entsprechend durchlaufen lassen
- make
- make install
Währenddessen den Monitord natürlich nicht laufen lassen.
Danach das Programm ganz normal starten. Dann hats bei mir mit dem Skripts (zumindest grundlegend) funktioniert.
Nein das bringts nicht, bei 145 Zeichen ist Ende. Es muss an was anderem liegen.
Ich hab das gleiche vorhin versucht. Kein Erfolg.
In der Datei MonitorModulePocsag.h ist ein Buffer als Array mit einer Länge von 128 definiert. Die Arraylänge habe ich einfach mal auf 256 vergrößert. Damit kamen auch Längere Meldungen durch, allerdings wurden Meldungen, die Länger als 145 Zeichen waren nicht korrekt dekodiert. Mit nicht korrekt meine ich, dass man anhand des dekodierten Textes noch nicht mal was erahnen konnte.
Meldungen die weniger als 145 Zeichen enthielten wurden korrekt dekodiert.
Für FMS und POCSAG habe ich nun auch Filter erstellt, die prüfen, ob es sich bei den dekodierten FMS-Kennungen und den RICs um plausible Werte handelt. Ist das nicht der Fall, werden diese nicht in die MySQL-Datenbank geschrieben.
Die RIC, die bei uns alle paar Minuten ausgesendet wird, damit die DMEs wissen, dass sie noch empfang haben, habe ich ebenfalls herausgefiltert. Funktioniert soweit ganz gut.
Mir ist noch aufgefallen, dass im monitord manchmal auch nicht der ganze POCSAG-Text dekodiert wird. FMS32pro bekommt die selben Nachrichten jedoch dekodiert. Vielleicht bekommt man da auch noch was gedreht.Code:local toHidePOCSAG = {"xxxxxxx"} ; --RIC, die zur Empfangskontrolle der DMEs dient function pocsagAktion() end function fmsAktion() end function pocsagFilter() if(string.sub(arg["ric"],1,2) ~= "xx") then --xx durch erste beiden Ziffern der RICs ersetzen return 1 end for index,testwert in pairs(toHidePOCSAG) do if(testwert == arg["ric"]) then return 1 end end return 0 end function fmsFilter() --print("fmsFilter") --print(arg["fmskennung"]) if(string.sub(arg["fmskennung"],1,3) ~= "xxx") then --xxx durch erste drei Ziffern der FMS-Kennung ersetzen (BOS-Kennung, Landeskennung & 1. Ziffer der Ortskennung) return 1 end return 0 end function pluginFilter() --print(arg["typ"]) if (arg["typ"]=="pocsag") then pocsagAktion() return pocsagFilter() end if (arg["typ"]=="fms") then fmsAktion() return fmsFilter() end return 0; end
Geändert von matt (08.02.2013 um 00:58 Uhr)
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)