Closed MarSch1 closed 3 years ago
Alarmierungstext (Fake-Adressen und -Objekt):
TESTALARM Person in Zwangslage;H2.04;Neustadt;Königsbach;Weinstraße 1;VS Winzerheim;;Dortige Baustelle..Treppensturz nach Kopf vs Balken // Ca- 2-3 Meter hinabgestürzt //
Ohne Regex:
dict: {'function': '1', 'has_geo': False, 'description': '1234567', 'has_schema_fields': False, 'msg': 'TESTALARM Person in Zwangslage;H2.04;Neustadt;Königsbach;Weinstraße 1;VS Winzerheim;;Dortige Baustelle..Treppensturz nach Kopf vs Balken // Ca- 2-3 Meter hinabgestürzt //', 'bitrate': 1200, 'ric': '1234567'}
Mit Regex:
dict: {'function': '1', 'has_geo': False, 'Objekt': 'VS Winzerheim', 'description': '1234567', 'StichwortLang': 'TESTALARM Person in Zwangslage', 'Ort': 'Neustadt', 'Bemerkung1': '', 'Adresse': 'Weinstraße 1', 'Bemerkung2': 'Dortige Baustelle..Treppensturz nach Kopf vs Balken // Ca- 2-3 Meter hinabgestürzt //', 'StichwortKurz': 'H2.04', 'has_schema_fields': True, 'msg': 'TESTALARM Person in Zwangslage;H2.04;Neustadt;Königsbach;Weinstraße 1;VS Winzerheim;;Dortige Baustelle..Treppensturz nach Kopf vs Balken // Ca- 2-3 Meter hinabgestürzt //', 'Ortsteil': 'Königsbach', 'bitrate': 1200, 'ric': '1234567
Wird also nur erweitert, ok. Was würde passieren, wenn du eine Regex Match Group so nennst, wie ein bereits existierendes Feld?
Wenn es das Feld in der data-Struktur bereits gibt, würde es entsprechend der Konfiguration gefüllt werden. Wenn es das Feld noch nicht gibt, wird es ergänzt.
Ok dann sollten wir das in der Config im Kommentar Block noch kurz erwähnen. Also, dass Match Groups die identisch zu bestehenden Feldern heißen, diese überschreiben.
Und evtl. generell was die Funktion macht - nämlich dass das data
dict erweitert wird.
Ich habe mal versucht das Feature etwas detaillierter zu beschreiben und habe ein Beispiel ergänzt.
Hi, ich habe eine Konfigurationsoption für den POC Decoder eingebaut, so dass der Text anhand eines regulären Ausdrucks mit Angabe von "named groups" analysiert und die data-Struktur entsprechend angereichert werden kann. Hat den Vorteil, dass wenn es ein festgelegtes Schema im Alarmierungstext gibt, die einzelnen Elemente in den entsprechenden Plugins dediziert weiterverwendet werden können.
Ob ein Text nach dem Schema ausgewertet konnte und es es die zusätzlichen Felder in der data-Struktur gibt, zeigt das Element has_schema_fields in der data-Struktur (True oder False).