From 8ce12441e33e88a6d84920ab016bf0f886c5788e Mon Sep 17 00:00:00 2001 From: Enzo Date: Thu, 7 May 2026 11:10:05 +0200 Subject: [PATCH] 4% --- mqtt_to_db.py | 40 ++++++++++++++++++++++++++++------------ 1 file changed, 28 insertions(+), 12 deletions(-) diff --git a/mqtt_to_db.py b/mqtt_to_db.py index cb33f29..06ca6b7 100644 --- a/mqtt_to_db.py +++ b/mqtt_to_db.py @@ -1,22 +1,29 @@ import paho.mqtt.client as mqtt import mysql.connector import json +import time -print("projet lance...") +print("Projet lance...") -db = mysql.connector.connect( - host="127.0.0.1", - user="web_user", - password="poubelle2026", - database="smart_bins" -) +db = None +while db is None: + try: + db = mysql.connector.connect( + host="127.0.0.1", + user="web_user", + password="poubelle2026", + database="smart_bins" + ) + print("Connecte a la base de donnees !") + except Exception: + print("En attente de la base de donnees...") + time.sleep(5) cursor = db.cursor() def on_message(client, userdata, msg): try: data = json.loads(msg.payload.decode()) - print("recu :", data) sql = """ @@ -26,21 +33,30 @@ def on_message(client, userdata, msg): values = ( data.get("id_poubelle", 1), data.get("niveau", 0), - data.get("poids",0), + data.get("poids", 0), data.get("temperature", 0), data.get("batterie", 100) ) cursor.execute(sql, values) db.commit() - - print("Enregistre en DB") + + print("Enregistre en DB") except Exception as e: print("Erreur :", e) client = mqtt.Client() -client.connect("localhost",1883, 60) + +mqtt_connected = False +while not mqtt_connected: + try: + client.connect("localhost", 1883, 60) + mqtt_connected = True + print("Connecte au broker MQTT !") + except Exception: + print("En attente du broker MQTT...") + time.sleep(5) client.subscribe("smart_trash/data") client.on_message = on_message