uno-q-home-assistant-integration.py
Integración de red que permite convertir los botones físicos Modulino en interruptores inteligentes comunicantes mediante MQTT.
Configure un servidor MQTT (p. ej., Mosquitto) en su red local. Modifique la dirección IP del broker en el script. Conecte un nodo Modulino Button. La biblioteca paho-mqtt debe estar instalada ('pip install paho-mqtt'). El script lee los eventos de teclado y los convierte en mensajes MQTT.
uno-q-home-assistant-integration.py
#!/usr/bin/env python3
import paho.mqtt.client as mqtt
import evdev
import json
MQTT_BROKER = "192.168.1.100" # IP de votre serveur Home Assistant
MQTT_PORT = 1883
DEVICE_PATH = '/dev/input/event3' # Bouton Modulino
def on_connect(client, userdata, flags, rc):
print("Connecté au broker MQTT avec code " + str(rc))
def main():
client = mqtt.Client()
client.on_connect = on_connect
client.connect(MQTT_BROKER, MQTT_PORT, 60)
client.loop_start()
device = evdev.InputDevice(DEVICE_PATH)
print(f"Surveillance de {device.name}...")
for event in device.read_loop():
if event.type == evdev.ecodes.EV_KEY:
state = "ON" if event.value else "OFF"
payload = json.dumps({"state": state})
# Publie sur un topic Home Assistant
client.publish("home/uno_q/button1", payload=payload, retain=True)
print(f"Publié: {payload}")
if __name__ == '__main__':
main()