🔒 Sécurisation via .env + refactorisation Monitor et MQTT
This commit is contained in:
@@ -1,30 +1,35 @@
|
||||
import paho.mqtt.client as mqttClient
|
||||
client = mqttClient.Client()
|
||||
import mysql.connector
|
||||
import sys
|
||||
sys.path.insert(0, "/myenv/lib/python3.11.2/site-packages")
|
||||
import os
|
||||
from dotenv import load_dotenv
|
||||
|
||||
# Configuration de la connexion MySQL
|
||||
load_dotenv()
|
||||
|
||||
# Site figé ici
|
||||
site = "Meudon"
|
||||
|
||||
# Connexion MySQL
|
||||
mydb = mysql.connector.connect(
|
||||
host="54.36.188.119",
|
||||
user="michel",
|
||||
password="#SO2&1nf%mZ@jfh",
|
||||
database="Sondes"
|
||||
host=os.getenv("DB_HOST"),
|
||||
user=os.getenv("DB_USER"),
|
||||
password=os.getenv("DB_PASSWORD"),
|
||||
database=os.getenv("DB_NAME")
|
||||
)
|
||||
|
||||
# Fonction de callback quand un message est reçu
|
||||
# Callback MQTT
|
||||
def on_message(_client, _userdata, msg):
|
||||
print(f"Message reçu sur {msg.topic}: {msg.payload.decode()}")
|
||||
print(f"[{site}] Message reçu sur {msg.topic}: {msg.payload.decode()}")
|
||||
cursor = mydb.cursor()
|
||||
frigo_name = msg.topic.split('/')[-1] # Prend la dernière partie après le "/"
|
||||
sql = "INSERT INTO Meudon (Sonde, Temperature) VALUES (%s, %s)"
|
||||
frigo_name = msg.topic.split('/')[-1]
|
||||
sql = f"INSERT INTO {site} (Sonde, Temperature) VALUES (%s, %s)"
|
||||
val = (frigo_name, msg.payload.decode())
|
||||
cursor.execute(sql, val)
|
||||
mydb.commit()
|
||||
|
||||
# Configuration du client MQTT
|
||||
client.username_pw_set("Bwps", "scJ5ACj2keRfI^")
|
||||
# Client MQTT
|
||||
client = mqttClient.Client()
|
||||
client.username_pw_set(os.getenv("MQTT_USER"), os.getenv("MQTT_PASSWORD"))
|
||||
client.on_message = on_message
|
||||
client.connect("54.36.188.119", 1883, 60)
|
||||
client.subscribe("Meudon/#") # S'abonner à tous les topics commençant par Saclay
|
||||
client.loop_forever() # Rester connecté en continu pour écouter les messages
|
||||
client.connect(os.getenv("MQTT_HOST"), 1883, 60)
|
||||
client.subscribe(f"{site}/#")
|
||||
client.loop_forever()
|
||||
Reference in New Issue
Block a user