BOSWatch 3 Core Repo - Documentation at http://docs.boswatch.de
Find a file
KoenigMjr 23d1b1a328 Fix POCSAG decoding crash caused by invalid subric parsing
Errorcode führte zu Programmexit:

> 12.10.2025 02:20:39,918 - inputThread sdrInput _runThread [ERROR] error in sdr input routine
Traceback (most recent call last):
>   File "/opt/boswatch3/boswatch/inputSource/sdrInput.py", line 65, in _runThread
>     self.addToQueue(line)
>   ...
> ValueError: invalid literal for int() with base 10: ' '

Ursache:
Die Funktion `_getBitrateRicSubric()` in `pocsagDecoder.py` griff fest auf `data[40]` zu, um den SubRIC-Wert zu ermitteln. Bei Fehlerhaften Datensätzen von multimon-ng kann sich die Position jedoch verschieben, wodurch an dieser Stelle ein Leerzeichen (' ') statt einer Ziffer stand. Dies führte zu einem ValueError und damit zum Abbruch des gesamten SDR-Threads.

Änderung:
Die Funktion wurde auf robuste Regex-Analyse umgestellt (analog fmsDecoder.py und pocsagDecoder.py):
- Bitrate, Address (RIC) und Function (SubRIC) werden nun mit regulären Ausdrücken extrahiert.
- Die ursprüngliche Logik (`subric = int(Function) + 1`) bleibt vollständig erhalten.
- Enthält die Zeile keine gültige Function, wird eine Warnung geloggt ("Invalid POCSAG function (not 0–3)")
- Zusätzliche Fehlerabsicherung durch try/except.

Ergebnis:
Der Decoder ist nun tolerant gegenüber Formatabweichungen und verhindert Abstürze bei fehlerhaften oder unvollständigen multimon-ng-Zeilen.
2025-10-22 09:59:59 +02:00
.github actions/checkout@v3 updated 2025-07-07 13:28:32 +02:00
boswatch Fix POCSAG decoding crash caused by invalid subric parsing 2025-10-22 09:59:59 +02:00
config Fehlerbehebung: Logging-Setup für Multi-Client-Betrieb korrigiert 2025-07-31 16:02:22 +02:00
docu Merge branch 'develop' into feature/telegram-neu 2025-10-21 13:39:04 +02:00
logo little adds and changes 2018-01-07 23:41:52 +01:00
module Update module/filter/doubleFilter.py 2025-06-11 10:22:12 +02:00
plugin Telegram mit Warteschlange 2025-08-08 21:11:48 +02:00
test Avoid "DeprecationWarning: invalid escape sequence" 2023-09-19 17:49:09 +02:00
.gitignore save router run stats to stats file 2019-10-25 14:33:18 +02:00
build_docu.sh add docu build script 2019-09-19 17:34:59 +02:00
bw_client.py Fehlerbehebung: Logging-Setup für Multi-Client-Betrieb korrigiert 2025-07-31 16:02:22 +02:00
bw_server.py Avoid "DeprecationWarning: invalid escape sequence" 2023-09-19 17:49:09 +02:00
Dockerfile Update Dockerfile 2021-02-16 15:08:30 +01:00
FileHead.template.py Avoid "DeprecationWarning: invalid escape sequence" 2023-09-19 17:49:09 +02:00
init_db.sql Change spacing in init_db.sql and add comment on table creation 2021-03-04 12:40:57 +01:00
install.sh Update install.sh 2025-06-04 11:40:57 +02:00
install_service.py feat: Interaktives Installationsskript mit Mehrsprachigkeit, argparse und Logging 2025-08-08 21:12:17 +02:00
LICENSE Create LICENSE 2018-09-18 06:16:24 +02:00
pytest.sh fix some pep8 errors 2020-02-24 23:52:20 +01:00
README.md Update README.md 2021-02-03 10:46:12 +01:00
requirements.txt Update requirements.txt 2025-06-10 08:03:47 +02:00

BOSWatch

BOSWatch

pytest documentation CodeQL

Es wird darauf hingewiesen, dass für die Teilnahme am BOS-Funk nur nach den Technischen Richtlinien der BOS zugelassene Funkanlagen verwendet werden dürfen. Der BOS-Funk ist ein nichtöffentlicher mobiler Landfunk. Privatpersonen gehören nicht zum Kreis der berechtigten Funkteilnehmer. (Quelle: TR-BOS)

Documentation: https://docs.boswatch.de

Wenn dir dieses Projekt gefällt, gib uns bitte einen STAR


The intercept of the German BOS radio is strictly prohibited and will be prosecuted. The use is only permitted for authorized personnel.

If you like this project, please give us a STAR