From 67ebe9e05e819c1e8c5da5a0519101ec41088163 Mon Sep 17 00:00:00 2001
From: Patrick Ade <21adpa1bif@hft-stuttgart.de>
Date: Sat, 19 Apr 2025 19:25:06 +0200
Subject: [PATCH] preparation for integration in web project

---
 .env                                          |  9 ---
 .../lib/mqtt_influx_backend/InfluxDBWriter.py | 20 -----
 .../mqtt_influx_backend/MQTTClientHandler.py  | 42 -----------
 build/lib/mqtt_influx_backend/Main.py         | 26 -------
 build/lib/mqtt_to_influx.py                   | 73 -------------------
 console.txt => mqtt/console.txt               |  0
 pyproject.toml => mqtt/pyproject.toml         |  0
 {src => mqtt/src}/__init__.py                 |  0
 .../src}/mqtt_influx_backend/__init__.py      |  0
 .../mqtt_influx_backend/influxDBWriter.py     |  0
 .../src}/mqtt_influx_backend/jsonhandler.py   |  0
 .../mqtt_influx_backend/loggingFactory.py     |  0
 .../mqtt_influx_backend/mQTTClientHandler.py  |  0
 .../src}/mqtt_influx_backend/mac_to_room.json |  0
 {src => mqtt/src}/mqtt_influx_backend/main.py |  0
 uv.lock => mqtt/uv.lock                       |  0
 mqtt_influx_backend.egg-info/PKG-INFO         |  9 ---
 mqtt_influx_backend.egg-info/SOURCES.txt      |  7 --
 .../dependency_links.txt                      |  1 -
 mqtt_influx_backend.egg-info/requires.txt     |  3 -
 mqtt_influx_backend.egg-info/top_level.txt    |  1 -
 src/mqtt_influx_backend.egg-info/PKG-INFO     |  8 --
 src/mqtt_influx_backend.egg-info/SOURCES.txt  | 10 ---
 .../dependency_links.txt                      |  1 -
 src/mqtt_influx_backend.egg-info/requires.txt |  2 -
 .../top_level.txt                             |  1 -
 26 files changed, 213 deletions(-)
 delete mode 100644 .env
 delete mode 100644 build/lib/mqtt_influx_backend/InfluxDBWriter.py
 delete mode 100644 build/lib/mqtt_influx_backend/MQTTClientHandler.py
 delete mode 100644 build/lib/mqtt_influx_backend/Main.py
 delete mode 100644 build/lib/mqtt_to_influx.py
 rename console.txt => mqtt/console.txt (100%)
 rename pyproject.toml => mqtt/pyproject.toml (100%)
 rename {src => mqtt/src}/__init__.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/__init__.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/influxDBWriter.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/jsonhandler.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/loggingFactory.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/mQTTClientHandler.py (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/mac_to_room.json (100%)
 rename {src => mqtt/src}/mqtt_influx_backend/main.py (100%)
 rename uv.lock => mqtt/uv.lock (100%)
 delete mode 100644 mqtt_influx_backend.egg-info/PKG-INFO
 delete mode 100644 mqtt_influx_backend.egg-info/SOURCES.txt
 delete mode 100644 mqtt_influx_backend.egg-info/dependency_links.txt
 delete mode 100644 mqtt_influx_backend.egg-info/requires.txt
 delete mode 100644 mqtt_influx_backend.egg-info/top_level.txt
 delete mode 100644 src/mqtt_influx_backend.egg-info/PKG-INFO
 delete mode 100644 src/mqtt_influx_backend.egg-info/SOURCES.txt
 delete mode 100644 src/mqtt_influx_backend.egg-info/dependency_links.txt
 delete mode 100644 src/mqtt_influx_backend.egg-info/requires.txt
 delete mode 100644 src/mqtt_influx_backend.egg-info/top_level.txt

diff --git a/.env b/.env
deleted file mode 100644
index 5d8dad8..0000000
--- a/.env
+++ /dev/null
@@ -1,9 +0,0 @@
-# InfluxDB config
-INFLUXDB_URL=http://localhost:8086
-INFLUXDB_ORG=docs
-INFLUXDB_BUCKET=co2-test
-INFLUXDB_TOKEN=jTTnLJmL5w2Z1IlkKJzkwDreWJ62HdDWT5_RS0J3Rbm28AxPkUZfU_sIPaG3aoLQ5MklO_Gn9y23HtU38yR0Nw==
-
-# (Optional) MQTT config, falls du das auch variabel machen willst
-MQTT_BROKER_URL="172.20.10.12"
-MQTT_TOPIC="co2/#"
diff --git a/build/lib/mqtt_influx_backend/InfluxDBWriter.py b/build/lib/mqtt_influx_backend/InfluxDBWriter.py
deleted file mode 100644
index 398a7f4..0000000
--- a/build/lib/mqtt_influx_backend/InfluxDBWriter.py
+++ /dev/null
@@ -1,20 +0,0 @@
-from influxdb_client import InfluxDBClient, Point, WritePrecision
-from influxdb_client.client.write_api import SYNCHRONOUS
-
-class InfluxDBWriter:
-    def __init__(self, url: str, token: str, org: str, bucket: str):
-        self.client = InfluxDBClient(url=url, token=token, org=org)
-        self.write_api = self.client.write_api(write_options=SYNCHRONOUS)
-        self.bucket = bucket
-        self.org = org
-
-    def write_point(self, measurement: str, tags: dict, fields: dict, timestamp=None):
-        point = Point(measurement)
-        for k, v in tags.items():
-            point.tag(k, v)
-        for k, v in fields.items():
-            point.field(k, v)
-        if timestamp:
-            point.time(timestamp, WritePrecision.NS)
-
-        self.write_api.write(bucket=self.bucket, org=self.org, record=point)
diff --git a/build/lib/mqtt_influx_backend/MQTTClientHandler.py b/build/lib/mqtt_influx_backend/MQTTClientHandler.py
deleted file mode 100644
index 2772fee..0000000
--- a/build/lib/mqtt_influx_backend/MQTTClientHandler.py
+++ /dev/null
@@ -1,42 +0,0 @@
-import json
-from datetime import datetime
-import paho.mqtt.client as mqtt
-from mqtt_influx_backend import InfluxDBWriter
-
-class MQTTClientHandler:
-    def __init__(self, broker_url: str, topic: str, influx_writer: InfluxDBWriter):
-        self.broker_url = broker_url
-        self.topic = topic
-        self.influx_writer = influx_writer
-        self.client = mqtt.Client()
-        self.client.on_connect = self.on_connect
-        self.client.on_message = self.on_message
-
-    def on_connect(self, client, userdata, flags, rc):
-        print("Connected with result code " + str(rc))
-        client.subscribe(self.topic)
-
-    def on_message(self, client, userdata, msg):
-        utfMgs = msg.payload.decode("utf-8")
-        #dictionary = json.loads(utfMgs)
-        print(utfMgs)
-        print(utfMgs)
-        print(utfMgs)
-        data = utfMgs
-        try:
-            
-            value = float(data.get("co2"))
-
-            self.influx_writer.write_point(
-                measurement="temperature",
-                tags={"topic": msg.topic},
-                fields={"value": value},
-                timestamp=datetime.utcnow()
-            )
-            print("Wrote to InfluxDB:", value)
-        except Exception as e:
-            print("Error processing message:", e)
-
-    def start(self):
-        self.client.connect(self.broker_url)
-        self.client.loop_forever()
diff --git a/build/lib/mqtt_influx_backend/Main.py b/build/lib/mqtt_influx_backend/Main.py
deleted file mode 100644
index 4202370..0000000
--- a/build/lib/mqtt_influx_backend/Main.py
+++ /dev/null
@@ -1,26 +0,0 @@
-from dotenv import load_dotenv
-import os
-
-from mqtt_influx_backend.MQTTClientHandler import MQTTClientHandler
-from mqtt_influx_backend.InfluxDBWriter import InfluxDBWriter
-
-load_dotenv()
-
-def main():
-    influx_writer = InfluxDBWriter(
-    url=os.getenv("INFLUXDB_URL"),
-    token=os.getenv("INFLUXDB_TOKEN"),
-    org=os.getenv("INFLUXDB_ORG"),
-    bucket=os.getenv("INFLUXDB_BUCKET")
-    )
-
-    mqtt_handler = MQTTClientHandler(
-    broker_url=os.getenv("MQTT_BROKER_URL"),
-    topic=os.getenv("MQTT_TOPIC"),
-    influx_writer=influx_writer
-    )
-
-    mqtt_handler.start()
-
-if __name__ == "__main__":
-    main()
diff --git a/build/lib/mqtt_to_influx.py b/build/lib/mqtt_to_influx.py
deleted file mode 100644
index 5046090..0000000
--- a/build/lib/mqtt_to_influx.py
+++ /dev/null
@@ -1,73 +0,0 @@
-import json
-from datetime import datetime
-
-import influxdb_client, os, time
-from influxdb_client import InfluxDBClient, Point, WritePrecision
-from influxdb_client.client.write_api import SYNCHRONOUS
-
-# InfluxDB config
-INFLUXDB_URL = os.environ.get("INFLUXDB_URL")
-INFLUXDB_TOKEN = os.environ.get("INFLUXDB_TOKEN")
-INFLUXDB_ORG = os.environ.get("INFLUXDB_ORG")
-INFLUXDB_BUCKET = os.environ.get("INFLUXDB_BUCKET")
-
-write_client = influxdb_client.InfluxDBClient(url=INFLUXDB_URL, token=INFLUXDB_TOKEN, org=INFLUXDB_ORG)
-
-bucket="co2-test"
-
-write_api = write_client.write_api(write_options=SYNCHRONOUS)
-
-# MQTT config
-MQTT_BROKER_URL = os.environ.get("MQTT_BROKER_URL")
-MQTT_PUBLISH_TOPIC = os.environ.get("MQTT_TOPIC")
-
-for value in range(5):
-  point = (
-    Point("measurement1")
-    .tag("mac-adress", "22:de:aa:21::a2")
-    .field("ppm", value)
-  )
-  write_api.write(bucket=bucket, org=INFLUXDB_ORG, record=point)
-  time.sleep(1) # separate points by 1 second
-
-
-
-
-'''
-def on_connect(client, userdata, flags, rc):
-    print("Connected with result code " + str(rc))
-    client.subscribe(MQTT_PUBLISH_TOPIC)
-
-def on_message(client, userdata, msg):
-    print(msg.topic + " " + str(msg.payload))
-
-    try:
-        # Decode JSON payload (z. B. {"value": 22.5, "unit": "C"})
-        data = json.loads(msg.payload.decode())
-        value = float(data.get("value"))
-
-        # Create data point
-        point = Point("temperature") \
-            .tag("topic", msg.topic) \
-            .field("value", value) \
-            .time(datetime.utcnow())
-
-        # Write to InfluxDB
-        write_api.write(bucket=INFLUXDB_BUCKET, org=INFLUXDB_ORG, record=point)
-        print("Wrote to InfluxDB:", point)
-
-    except Exception as e:
-        print("Error processing message:", e)
-'''
-
-
-# Start MQTT client
-'''
-mqttc = mqtt.Client()
-mqttc.on_connect = on_connect
-mqttc.on_message = on_message
-
-mqttc.connect(MQTT_BROKER_URL)
-mqttc.loop_forever()
-'''
-
diff --git a/console.txt b/mqtt/console.txt
similarity index 100%
rename from console.txt
rename to mqtt/console.txt
diff --git a/pyproject.toml b/mqtt/pyproject.toml
similarity index 100%
rename from pyproject.toml
rename to mqtt/pyproject.toml
diff --git a/src/__init__.py b/mqtt/src/__init__.py
similarity index 100%
rename from src/__init__.py
rename to mqtt/src/__init__.py
diff --git a/src/mqtt_influx_backend/__init__.py b/mqtt/src/mqtt_influx_backend/__init__.py
similarity index 100%
rename from src/mqtt_influx_backend/__init__.py
rename to mqtt/src/mqtt_influx_backend/__init__.py
diff --git a/src/mqtt_influx_backend/influxDBWriter.py b/mqtt/src/mqtt_influx_backend/influxDBWriter.py
similarity index 100%
rename from src/mqtt_influx_backend/influxDBWriter.py
rename to mqtt/src/mqtt_influx_backend/influxDBWriter.py
diff --git a/src/mqtt_influx_backend/jsonhandler.py b/mqtt/src/mqtt_influx_backend/jsonhandler.py
similarity index 100%
rename from src/mqtt_influx_backend/jsonhandler.py
rename to mqtt/src/mqtt_influx_backend/jsonhandler.py
diff --git a/src/mqtt_influx_backend/loggingFactory.py b/mqtt/src/mqtt_influx_backend/loggingFactory.py
similarity index 100%
rename from src/mqtt_influx_backend/loggingFactory.py
rename to mqtt/src/mqtt_influx_backend/loggingFactory.py
diff --git a/src/mqtt_influx_backend/mQTTClientHandler.py b/mqtt/src/mqtt_influx_backend/mQTTClientHandler.py
similarity index 100%
rename from src/mqtt_influx_backend/mQTTClientHandler.py
rename to mqtt/src/mqtt_influx_backend/mQTTClientHandler.py
diff --git a/src/mqtt_influx_backend/mac_to_room.json b/mqtt/src/mqtt_influx_backend/mac_to_room.json
similarity index 100%
rename from src/mqtt_influx_backend/mac_to_room.json
rename to mqtt/src/mqtt_influx_backend/mac_to_room.json
diff --git a/src/mqtt_influx_backend/main.py b/mqtt/src/mqtt_influx_backend/main.py
similarity index 100%
rename from src/mqtt_influx_backend/main.py
rename to mqtt/src/mqtt_influx_backend/main.py
diff --git a/uv.lock b/mqtt/uv.lock
similarity index 100%
rename from uv.lock
rename to mqtt/uv.lock
diff --git a/mqtt_influx_backend.egg-info/PKG-INFO b/mqtt_influx_backend.egg-info/PKG-INFO
deleted file mode 100644
index f6c854a..0000000
--- a/mqtt_influx_backend.egg-info/PKG-INFO
+++ /dev/null
@@ -1,9 +0,0 @@
-Metadata-Version: 2.4
-Name: mqtt-influx-backend
-Version: 0.1.0
-Summary: MQTT subscriber that stores data in InfluxDB
-Author-email: Dein Name <deine.email@example.com>
-Requires-Python: >=3.8
-Requires-Dist: influxdb-client
-Requires-Dist: paho-mqtt
-Requires-Dist: python-dotenv
diff --git a/mqtt_influx_backend.egg-info/SOURCES.txt b/mqtt_influx_backend.egg-info/SOURCES.txt
deleted file mode 100644
index 92ee43a..0000000
--- a/mqtt_influx_backend.egg-info/SOURCES.txt
+++ /dev/null
@@ -1,7 +0,0 @@
-mqtt_to_influx.py
-pyproject.toml
-mqtt_influx_backend.egg-info/PKG-INFO
-mqtt_influx_backend.egg-info/SOURCES.txt
-mqtt_influx_backend.egg-info/dependency_links.txt
-mqtt_influx_backend.egg-info/requires.txt
-mqtt_influx_backend.egg-info/top_level.txt
\ No newline at end of file
diff --git a/mqtt_influx_backend.egg-info/dependency_links.txt b/mqtt_influx_backend.egg-info/dependency_links.txt
deleted file mode 100644
index 8b13789..0000000
--- a/mqtt_influx_backend.egg-info/dependency_links.txt
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/mqtt_influx_backend.egg-info/requires.txt b/mqtt_influx_backend.egg-info/requires.txt
deleted file mode 100644
index 71b4ba3..0000000
--- a/mqtt_influx_backend.egg-info/requires.txt
+++ /dev/null
@@ -1,3 +0,0 @@
-influxdb-client
-paho-mqtt
-python-dotenv
diff --git a/mqtt_influx_backend.egg-info/top_level.txt b/mqtt_influx_backend.egg-info/top_level.txt
deleted file mode 100644
index e657adf..0000000
--- a/mqtt_influx_backend.egg-info/top_level.txt
+++ /dev/null
@@ -1 +0,0 @@
-mqtt_to_influx
diff --git a/src/mqtt_influx_backend.egg-info/PKG-INFO b/src/mqtt_influx_backend.egg-info/PKG-INFO
deleted file mode 100644
index fecd44b..0000000
--- a/src/mqtt_influx_backend.egg-info/PKG-INFO
+++ /dev/null
@@ -1,8 +0,0 @@
-Metadata-Version: 2.4
-Name: mqtt-influx-backend
-Version: 0.1.0
-Summary: Backend to write MQTT sensor data to InfluxDB
-Requires-Python: >=3.10
-Description-Content-Type: text/markdown
-Requires-Dist: paho-mqtt
-Requires-Dist: influxdb-client
diff --git a/src/mqtt_influx_backend.egg-info/SOURCES.txt b/src/mqtt_influx_backend.egg-info/SOURCES.txt
deleted file mode 100644
index 01700c4..0000000
--- a/src/mqtt_influx_backend.egg-info/SOURCES.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-pyproject.toml
-src/mqtt_influx_backend/InfluxDBWriter.py
-src/mqtt_influx_backend/MQTTClientHandler.py
-src/mqtt_influx_backend/Main.py
-src/mqtt_influx_backend/__init__.py
-src/mqtt_influx_backend.egg-info/PKG-INFO
-src/mqtt_influx_backend.egg-info/SOURCES.txt
-src/mqtt_influx_backend.egg-info/dependency_links.txt
-src/mqtt_influx_backend.egg-info/requires.txt
-src/mqtt_influx_backend.egg-info/top_level.txt
\ No newline at end of file
diff --git a/src/mqtt_influx_backend.egg-info/dependency_links.txt b/src/mqtt_influx_backend.egg-info/dependency_links.txt
deleted file mode 100644
index 8b13789..0000000
--- a/src/mqtt_influx_backend.egg-info/dependency_links.txt
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/src/mqtt_influx_backend.egg-info/requires.txt b/src/mqtt_influx_backend.egg-info/requires.txt
deleted file mode 100644
index 04cfe98..0000000
--- a/src/mqtt_influx_backend.egg-info/requires.txt
+++ /dev/null
@@ -1,2 +0,0 @@
-paho-mqtt
-influxdb-client
diff --git a/src/mqtt_influx_backend.egg-info/top_level.txt b/src/mqtt_influx_backend.egg-info/top_level.txt
deleted file mode 100644
index 90227a0..0000000
--- a/src/mqtt_influx_backend.egg-info/top_level.txt
+++ /dev/null
@@ -1 +0,0 @@
-mqtt_influx_backend
-- 
GitLab