From 011ee9847732a837a698a2877ffc40ded438baf8 Mon Sep 17 00:00:00 2001 From: Dirk Alders Date: Sun, 20 Jul 2025 08:48:59 +0200 Subject: [PATCH] added regex for topic filter --- mqtt_sniffer.py | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/mqtt_sniffer.py b/mqtt_sniffer.py index 8567172..15324b9 100644 --- a/mqtt_sniffer.py +++ b/mqtt_sniffer.py @@ -1,8 +1,9 @@ import argparse import getpass -import logging import json +import logging import mqtt +import re import time from textual.app import App, ComposeResult @@ -10,7 +11,6 @@ from textual.containers import Vertical from textual.widgets import Footer, Header, Input, RichLog -# TODO: Usage of multiple regex for topic filter # TODO: Integrate sending of message (topic + payload) class MqttReceiver(object): @@ -68,7 +68,10 @@ class MqttSniffer(App): """filter the mqtt messages.""" topic_match = False for topic_filter in self.topic_filter.split(","): - topic_match |= topic_filter.lower() in record.topic.lower() + try: + topic_match |= len(re.findall(topic_filter, record.topic)) > 0 + except re.error: + pass # No valid regular expression if topic_match: try: