import paho.mqtt.client as mqtt import sys # ===== KONFIGURATION ===== # BROKER = "141.75.215.233" PORT = 1883 TOPIC = "PREDICTION" MESSAGE = "sad gummy bitches" USERNAME = None PASSWORD = None QOS = 0 # ========================== import socket def get_local_ip(): s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) try: s.connect(("8.8.8.8", 80)) ip = s.getsockname()[0] finally: s.close() return ip def on_connect(client, userdata, flags, rc): if rc == 0: print("✅ Erfolgreich mit Broker verbunden") # Subscribe client.subscribe(TOPIC, qos=QOS) print(f"📡 Abonniert Topic: '{TOPIC}'") # Publish client.publish(TOPIC, MESSAGE, qos=QOS) print(f"📤 Nachricht gesendet an Topic '{TOPIC}': {MESSAGE}") else: print(f"❌ Verbindung fehlgeschlagen mit Code {rc}") def on_message(client, userdata, msg): try: payload = msg.payload.decode() except: payload = msg.payload print("📥 Nachricht empfangen:") print(f" Topic: {msg.topic}") print(f" QoS: {msg.qos}") print(f" Payload: {payload}") print("-" * 40) def on_disconnect(client, userdata, rc): print("⚠ Verbindung getrennt") def main(): client = mqtt.Client() BROKER = get_local_ip() if USERNAME and PASSWORD: client.username_pw_set(USERNAME, PASSWORD) client.on_connect = on_connect client.on_message = on_message client.on_disconnect = on_disconnect try: client.connect(BROKER, PORT, 60) client.loop_forever() except Exception as e: print("Fehler:", e) sys.exit(1) if __name__ == "__main__": main()