added n8n flow

This commit is contained in:
2025-11-03 23:55:14 +00:00
parent a35d5e31de
commit 4899ac3ebf
3 changed files with 149 additions and 0 deletions

View File

@@ -33,6 +33,7 @@ mqtt/
├── .env # Umgebungsvariablen (NICHT committen!)
├── .env.example # Beispiel für Umgebungsvariablen
├── mqtt-panel-config.json # Legacy Dashboard Konfiguration
├── n8n-mqtt.json # n8n Workflow für MQTT-Integration
├── setup.sh # Setup-Script für User
├── test-mqtt.sh # Test-Script für MQTT Nachrichten
├── CLAUDE.md # Projekt-Dokumentation für Claude Code
@@ -211,6 +212,42 @@ Nach Änderungen Container neu starten:
docker compose restart mqttui
```
## n8n Integration
Das Repository enthält einen vorgefertigten n8n Workflow (`n8n-mqtt.json`), der automatisch MQTT-Nachrichten an den Broker sendet.
### Was ist n8n?
[n8n](https://n8n.io/) ist ein Workflow-Automatisierungstool, ähnlich wie Zapier oder Node-RED, mit dem sich verschiedene Dienste und APIs miteinander verbinden lassen.
### Workflow-Funktionen
Der bereitgestellte Workflow sendet automatisch das aktuelle Datum und die Uhrzeit an das Topic `devices/device1/now`:
- **Manueller Trigger**: Workflow manuell per Button ausführen
- **Schedule Trigger**: Automatische Ausführung jede Minute
- **MQTT Node**: Sendet Timestamp im Format "dd.MM.yyyy - HH:mm:ss"
### Workflow importieren
1. n8n installieren und starten (siehe [n8n Dokumentation](https://docs.n8n.io/))
2. In n8n: **Workflows → Import → From File**
3. Die Datei `n8n-mqtt.json` auswählen
4. MQTT Credentials konfigurieren:
- Host: `localhost` (oder deine Server-IP)
- Port: `1883`
- Username: z.B. `device1` (aus deiner `.env`)
- Password: entsprechendes Passwort aus `.env`
5. Workflow aktivieren
⚠️ **Hinweis**: Der User muss Schreibrechte für `devices/device1/#` haben (siehe ACL in `config/acl.conf`).
### Workflow anpassen
Du kannst den Workflow nach dem Import anpassen:
- **Topic ändern**: Passe das Topic im MQTT Node an (Zeile 17 in der JSON)
- **Schedule anpassen**: Ändere den Zeitplan im Schedule Trigger Node
- **Nachrichtenformat**: Passe die Message-Expression an (Zeile 19)
## Test-Nachrichten senden
### Via Docker