Schrolli91 / BOSWatch

Python Script to process input data from rtl_fm and multimon-NG - multiple Plugin support
https://bwcc.boswatch.de
GNU General Public License v2.0
133 stars 59 forks source link

Probleme mit der Filterung der RICs #515

Closed scheff33 closed 3 years ago

scheff33 commented 3 years ago

Moin, ich habe Probleme die RICs zu filtern. Die RICs unserer Ortsfeuerwehr habe ich in der ini eingetragen, aber ich bekomme Alarme für alle RICs. Nur wenn ich RICs unter deny eintrage werden diese Alarme nicht weiter geleitet. Da es aber sehr viele RICs im Kreis gibt kann ich nicht alle auf die den Liste setzen.

Deny this RICs (empty: allow all, separator ",")

f.e.: deny_ric = 1234566,1234567,1234568

deny_ric =

deny_ric = 0900000, 0900007, 0881953, 0882137

start and end of an allowed filter range

filter_range_start = 882809 filter_range_end = 922433

look-up-table for adding a description

using description (0 - off | 1 - on)

descriptions are loaded from csv/poc.csv

idDescribed = 0

change between Main-RIC with Sub-RIC (0 - off)

or only the Sub-RIC (1 - on)

descriptions are loaded from csv/poc.csv

onlysubric = 0

Static Massages for Subrics.

rica = Alarm ricb = Stiller Alarm ricc = Info ricd = Abbruch

RIC for net identification

Usually sent periodically, separated by comma

netIdent_ric = 0174760, 1398098

you can hold one entry per netIdent_ric [0] or the whole history [1]

netIdent_history = 0

With some message, coordinates can be sent to determine the destination

Do you want to enable this feature? (0 - off | 1 - on)

geo_enable = 0

If a RIC contains coordinates, specify the regex used to decode them

geo_format = #C(\d{2})(\d{5}),(\d{2})(\d{5})# geo_order = LON, lon, LAT, lat

Schrolli91 commented 3 years ago

Bitte mal nen geschwärzten Log Auszug posten - Glaskugel ist kaputt 😉

scheff33 commented 3 years ago
16.02.2021 08:12:02 - decoder         [DEBUG   ] received POCSAG
16.02.2021 08:12:02 - poc             [DEBUG   ] POCSAG Bitrate: 1200
16.02.2021 08:12:02 - poc             [INFO    ] RIC 0900000 is not in the allowed list
16.02.2021 08:12:02 - poc             [INFO    ] RIC 0900000 in between filter range
16.02.2021 08:12:02 - doubleFilter    [DEBUG   ] checkID: 09000001 (<BS><DLE>)
16.02.2021 08:12:02 - poc             [INFO    ] POCSAG1200: 0900000 1 <BS><DLE> 
16.02.2021 08:12:02 - alarmHandler    [DEBUG   ] [  ALARM  ]
16.02.2021 08:12:02 - alarmHandler    [DEBUG   ] call Plugin: eMail
16.02.2021 08:12:02 - configHandler   [DEBUG   ] read [eMail] from config file
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - smtp_server = smtp.XXXXX.de
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - smtp_port = XXX
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - tls = 1
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - user = XXX@XXXXX.net
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - password = ***
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - from = XXX@XXXXXX.net
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - to = xxxxx@xxxxxx.net
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - priority = urgent
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - fms_subject = FMS: %FMS%
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - fms_message = %DATE% %TIME%: %FMS%%BR%Status: %STATUS% - Direction: %DIRT% - TSI: %TSI%
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - zvei_subject = Alarm: %ZVEI%
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - zvei_message = %DATE% %TIME%: %ZVEI%
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - poc_subject = Alarm: %RIC%%LPAR%%FUNCCHAR%%RPAR%
16.02.2021 08:12:02 - configHandler   [DEBUG   ]  - poc_message = %DATE% %TIME% - %DESCR%: %MSG%
16.02.2021 08:12:03 - eMail           [DEBUG   ] Start POC to eMail
16.02.2021 08:12:03 - wildcardHandler [DEBUG   ] wildcards been replaced
16.02.2021 08:12:03 - wildcardHandler [DEBUG   ] wildcards been replaced
16.02.2021 08:12:03 - eMail           [DEBUG   ] close eMail-Connection
16.02.2021 08:12:03 - alarmHandler    [DEBUG   ] return from: eMail
16.02.2021 08:12:03 - alarmHandler    [DEBUG   ] [END ALARM]
Schrolli91 commented 3 years ago

Seh keinen Fehler - die RIC ist ja in der allowedRange. [INFO ] RIC 0900000 in between filter range

Schau mal hier rein, da steht aufgelistet nach welchem Schema er beim Filtern vorgeht: https://github.com/Schrolli91/BOSWatch/blob/5ebbaba6f15b1e0fc0e01b26cfeaf22ebaf82252/includes/decoders/poc.py#L39 Bei dir schlägt dann # 3.) Check Range, return False if outside def. range zu

Aus deiner Config:

# start and end of an allowed filter range
filter_range_start = 882809
filter_range_end =   922433
scheff33 commented 3 years ago

OK, ich hatte zuerst nur die allow_ric eingetragen, es wurden aber alle weiter geleitet. Nur die RICs unter deny_ric werden auch raus gefiltert.

Reicht es aus die Filter_range raus zu nehmen?

Schrolli91 commented 3 years ago

Ja eigentlich sollte es reichen, den Range Filter zu leeren. Dann sollte nur noch Allow weitergeleitet werden

scheff33 commented 3 years ago

Ok, ich habe die Filter_range geleert. Jetzt erhalte ich folgende Meldungen, können die ignoriert werden:

16.02.2021 10:12:00 - decoder         [DEBUG   ] received POCSAG
16.02.2021 10:12:00 - poc             [DEBUG   ] POCSAG Bitrate: 1200
16.02.2021 10:12:00 - poc             [INFO    ] RIC 0900000 is not in the allowed list
16.02.2021 10:12:00 - poc             [ERROR   ] error while decoding
16.02.2021 10:12:00 - poc             [DEBUG   ] error while decoding
Traceback (most recent call last):
  File "/opt/boswatch/includes/decoders/poc.py", line 156, in decode
    if isAllowed(poc_id):
  File "/opt/boswatch/includes/decoders/poc.py", line 53, in isAllowed
    if globalVars.config.getint("POC", "filter_range_start") < int(poc_id) < globalVars.config.getint("POC", "filter_range_end"):
  File "/usr/lib/python2.7/ConfigParser.py", line 359, in getint
    return self._get(section, int, option)
  File "/usr/lib/python2.7/ConfigParser.py", line 356, in _get
    return conv(self.get(section, option))
ValueError: invalid literal for int() with base 10: ''
Schrolli91 commented 3 years ago

Nein, Fehler sollten nie ignoriert werden 😉 Versuch mal in beide 0 rein zu schreiben - ganz leer schmeckt ihm wohl nicht.

scheff33 commented 3 years ago

Das funktioniert. Vielen Dank für den Support.

Ich hatte schon im Wiki gesucht, die Infos gerade zu dieser zentralen Config-Datei sind aber leider sehr wenig.