BOSWatch 3 Core Repo - Documentation at http://docs.boswatch.de
Find a file
KoenigMjr a3338ea5dd 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 Funktion, 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-21 15:33:06 +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-21 15:33:06 +02:00
config Fehlerbehebung: Logging-Setup für Multi-Client-Betrieb korrigiert 2025-07-31 16:02:22 +02:00
docu Squashed commit of the following: 2025-10-06 13:47:59 +02:00
logo little adds and changes 2018-01-07 23:41:52 +01:00
module Squashed commit of the following: 2025-10-06 13:46:49 +02:00
plugin Squashed commit of the following: 2025-10-06 13:47:00 +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 2022-05-04 22:45:51 +02: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 2022-05-04 22:45:51 +02:00
install.sh Update install.sh 2025-06-04 11:40:57 +02:00
install_service.py Squashed commit of the following: 2025-10-06 13:47:59 +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