Zum Hauptinhalt springen

n8n Smart-Home-Integration, kostenlos und Open Source

n8n-Integration für Gladys Assistant

Deine n8n-Workflows in Gladys: Starte sie aus einer Szene, reagiere, wenn einer fehlschlägt.

n8n ist ein Werkzeug zur Workflow-Automatisierung, das du selbst hosten kannst: Verbundene Knoten holen Daten, rufen Dienste auf, verschicken Nachrichten. Diese Integration bringt deine n8n-Workflows in Gladys: Jeder Workflow wird ein Gerät mit seinem Zustand (aktiv oder nicht, letzte Ausführung erfolgreich oder fehlgeschlagen, Fehlschläge der letzten 24 Stunden), Szenen können einen Workflow starten – über seinen Webhook-Knoten – und seine Antwort nutzen, reagieren, wenn irgendeine Ausführung fehlschlägt oder n8n nicht mehr antwortet, und ein Dashboard-Widget zeigt zuerst die fehlschlagenden Workflows.

Getestet mit einem echten, selbst gehosteten n8n 2.43 (Docker); nicht mit n8n Cloud (gleiche API, ungetestet): Rückmeldungen sind willkommen in den Issues.

Was du brauchst​

  • Gladys Assistant 5.1.0 oder neuer.
  • n8n 1.x oder 2.x, selbst gehostet, vom Gladys-Rechner erreichbar (n8n Cloud sollte auch funktionieren: gleiche API).
  • Einen n8n-API-Schlüssel (Settings → n8n API). Die öffentliche API darf nicht deaktiviert sein (N8N_PUBLIC_API_DISABLED).

Bei jeder Aktualisierung (standardmäßig jede Minute) schickt die Integration vier Anfragen an die API von n8n, beim ersten Mal ein paar mehr. n8n begrenzt seine API nicht; bei n8n Cloud prüfe die Grenzen deines Tarifs.

Erste Schritte​

1. Einen API-Schlüssel erstellen​

Öffne in n8n Settings → n8n API, klicke auf Create an API key, gib ihm einen Namen (Gladys) und kein Ablaufdatum, und kopiere den Schlüssel: n8n zeigt ihn nur einmal. Wenn dein n8n die Rechte (Scopes) des Schlüssels wählen lässt, aktiviere workflow:list, workflow:activate, workflow:deactivate, execution:list und execution:read. Der Schlüssel sieht die Workflows seines Besitzers.

2. Die Integration konfigurieren​

Öffne in Gladys die Konfiguration der n8n-Integration:

  • n8n-Adresse: die Adresse, mit der du n8n öffnest, zum Beispiel http://192.168.1.2:5678. Eine reine IP-Adresse bekommt Port 5678. Eine aus dem Browser kopierte URL geht auch.
  • API-Schlüssel: der Schlüssel aus Schritt 1.
  • Aktualisierungsintervall: 30 Sekunden bis 5 Minuten.
  • Workflows aus Gladys schalten erlauben: standardmäßig aus, siehe unten.
  • Sprache der Namen: Sprache der Funktionsnamen, der Zustände und der Szenenergebnisse.

Klicke auf Verbindung testen: Es zeigt die Workflows, die aktiven und die Fehlschläge der letzten 24 Stunden.

3. Die Workflows hinzufügen​

Öffne den Tab Entdecken der Integration und füge die Workflows hinzu, die du verfolgen willst, und das Gerät n8n, wenn du die Zahlen der ganzen Instanz möchtest. Nichts wird ohne dich hinzugefügt. Die Szenenauslöser funktionieren für alle Workflows, hinzugefügt oder nicht.

Die Geräte​

Jeder Workflow (außer archivierten) ergibt ein Gerät:

FunktionWert
Aktivder Workflow ist aktiv (veröffentlicht) oder nicht
Letzte AusführungErfolgreich, Fehlgeschlagen, Abgestürzt, Abgebrochen, Wartet, Läuft…
FunktioniertNein, wenn die letzte Ausführung fehlschlug, sonst Ja (grün / rot)
Fehlschläge in 24 hfehlgeschlagene Ausführungen der letzten 24 Stunden
Letzter StartBeginn der letzten Ausführung, Tag/Monat Stunden:Minuten
Dauer der letzten Ausführungin Sekunden

Der Schalter Aktiv zeigt standardmäßig nur den Zustand. Mit Workflows aus Gladys schalten erlauben aktiviert und deaktiviert er den Workflow: Klicke nach dem Ändern der Option im Tab „Entdecken“ bei den Geräten auf Aktualisieren.

Das Gerät n8n liefert die Aktive Workflows, die Fehlschläge in 24 h und die Workflows insgesamt.

Dashboard​

Das Widget n8n-Workflows zeigt drei Kacheln (aktive Workflows, Fehlschläge in 24 Stunden, laufende Ausführungen), dann eine Zeile pro Workflow: zuerst die fehlschlagenden, dann die laufenden, dann die anderen, mit dem Zustand der letzten Ausführung, ihrer Startzeit und den Fehlschlägen des Tages. Standardmäßig listet es die aktiven Workflows; wähle andere in seinen Einstellungen (zu Gladys hinzugefügte Geräte). Der Button Aktualisieren liest n8n neu.

Szenen​

Auslöser​

  • Eine Workflow-Ausführung schlägt fehl: Eine Ausführung endet mit einem Fehler (oder stürzt ab). Filter: die Workflows (leer: alle). Weitergegebene Informationen: Name des Workflows, Fehlermeldung, fehlerhafter Knoten, Nummer der Ausführung, Link zur Ausführung in n8n.
  • n8n ist nicht erreichbar: Zwei Abfragen in Folge sind fehlgeschlagen. Weitergegebene Information: der Grund.
  • n8n antwortet wieder: nachdem es nicht erreichbar war, mit der Dauer des Ausfalls in Minuten.

Die erste Abfrage merkt sich nur, was schon passiert ist: Für die Vergangenheit wird nichts gemeldet. Ein Fehlschlag während eines Neustarts von Gladys oder der Integration wird einmal gemeldet, bei der nächsten Abfrage.

Aktionen​

  • n8n-Workflow starten: Die API von n8n kann keinen Workflow starten, sein Webhook-Knoten schon. Füge in n8n einen Webhook-Auslöserknoten hinzu, stelle seine HTTP Method auf POST, gib ihm einen Path (gladys-hallo) und aktiviere den Workflow. Trage in der Szene diesen Pfad ein (oder die ganze Production URL des Knotens) und einen Inhalt: JSON wie {"raum": "Wohnzimmer"}, oder einen Text, der als {"text": "…"} gesendet wird; Werte der Szene können eingefügt werden. Ergebnisse: erfolgreich beantwortet, HTTP-Status (0 ohne Antwort innerhalb von 25 Sekunden), Antwortnachricht (das Feld message oder text der Antwort), vollständige Antwort. Für eine Antwort stelle Respond auf „When Last Node Finishes“ oder nutze einen Knoten „Respond to Webhook“; ein Workflow, der länger als 25 Sekunden dauert, sollte sofort antworten.
  • Zustand eines Workflows: aktiv oder nicht, letzte Ausführung fehlgeschlagen oder nicht, Zustand, Fehlschläge in 24 h, letzter Start, Dauer, letzter Fehler und ein fertiger Satz, für die nächsten Aktionen (eine Nachricht, eine Bedingung).
  • Workflow aktivieren / Workflow deaktivieren: zum Beispiel ein Workflow, der nur im Urlaub laufen soll. Diese Aktionen funktionieren unabhängig von der Option des Schalters.

Szenenideen​

  • Eine Workflow-Ausführung schlägt fehl → eine Nachricht senden: „n8n: {Workflow} ist in {Knoten} fehlgeschlagen: {Fehler}“ mit dem Link zur Ausführung.
  • Ein Button im Dashboard oder „Ich gehe“ → n8n-Workflow starten gladys-weg mit {"benutzer": "…"}, dann die Antwortnachricht des Workflows senden.
  • n8n ist nicht erreichbar → eine Nachricht senden und ein Licht im Büro einschalten.
  • Jeden Morgen → Zustand eines Workflows „Nächtliche Sicherung“ → nur fortfahren, wenn „Letzte Ausführung fehlgeschlagen“ wahr ist → den Satz senden.

Fehlerbehebung​

  • API-Schlüssel abgelehnt: Der Schlüssel wurde gelöscht, ist abgelaufen oder unvollständig kopiert. Erstelle einen neuen.
  • Von n8n abgelehnt: Dem API-Schlüssel fehlt ein Recht: Gib dem Schlüssel die Rechte aus Schritt 1, oder nutze einen Schlüssel des Besitzers des Workflows.
  • Keine n8n-API unter dieser Adresse: Prüfe die Adresse (standardmäßig Port 5678) und dass die öffentliche API aktiviert ist. Hinter einem Reverse Proxy mit Unterpfad gehört der Unterpfad in die Adresse.
  • Die Adresse leitet um: Gib die https://-Adresse ein.
  • Zertifikat abgelehnt: Ein selbst signiertes Zertifikat wird nicht akzeptiert; nutze im lokalen Netz die http://-Adresse.
  • Der Webhook antwortet 404 „not registered“: Der Workflow ist nicht aktiv, der Pfad ist falsch, oder der Webhook-Knoten akzeptiert kein POST. Eine Test-URL (/webhook-test/) funktioniert nur, solange der Editor lauscht.
  • Kein Fehlschlag wird gesehen: n8n muss fehlgeschlagene Ausführungen speichern (EXECUTIONS_DATA_SAVE_ON_ERROR, standardmäßig an). Nicht gespeicherte erfolgreiche Ausführungen (EXECUTIONS_DATA_SAVE_ON_SUCCESS=none) lassen „Letzte Ausführung“ auf dem letzten Fehlschlag stehen.
  • Protokolle: In Gladys zeigt die Seite der Integration die Protokolle ihres Containers; LOG_LEVEL=debug zeigt jede Abfrage.

Grenzen​

  • Eine n8n-Instanz pro Konfiguration; der Schlüssel sieht die Workflows seines Besitzers.
  • Workflows werden in Gladys weder erstellt noch bearbeitet.
  • Die erste Abfrage zählt höchstens 500 fehlgeschlagene Ausführungen der letzten 24 Stunden, und pro Abfrage werden höchstens 10 Fehlschläge gemeldet.
  • Der Inhalt des Webhooks ist nur JSON; Webhooks mit Header- oder Basic-Authentifizierung werden nicht unterstützt (nutze einen schwer zu erratenden Pfad).
  • n8n Cloud ist ungetestet.

Konfigurationseinstellungen​

Diese Einstellungen fragt n8n in seinem Konfigurationsbildschirm in Gladys ab.

EinstellungTypPflichtfeldBeschreibung
Dein n8nsectionNeinÖffne in n8n Settings → n8n API, erstelle einen API-Schlüssel und füge ihn unten mit der Adresse von n8n ein. Füge dann die zu verfolgenden Workflows im Tab „Entdecken“ hinzu.
n8n-AdressestringNeinDie Adresse, mit der du n8n öffnest. Zu einer reinen IP-Adresse wird Port 5678 ergänzt.
API-SchlüsselsecretNeinErstellt unter Settings → n8n API. Er sieht die Workflows seines Besitzers.
OptionensectionNein
AktualisierungsintervallselectNeinWie oft n8n gelesen wird: jedes Mal mindestens vier API-Anfragen.
Workflows aus Gladys schalten erlaubenbooleanNeinAus: Der Schalter „Aktiv“ zeigt nur den Zustand. An: Er aktiviert und deaktiviert den Workflow (klicke danach im Tab „Entdecken“ auf „Aktualisieren“).
Sprache der NamenselectNeinSprache der Funktionsnamen (beim Hinzufügen eines Geräts festgelegt), der Zustände und der Szenenergebnisse.

So installierst du n8n in Gladys​

  1. Öffne in Gladys Integrationen: n8n erscheint im Katalog neben den nativen Integrationen, mit einem Community-Badge.
  2. Klicke auf Installieren. Gladys lädt das Docker-Image (ghcr.io/guim31/gladys-n8n:1.0.0) herunter, startet es in einer vom Kern isolierten Sandbox und erzeugt die Oberfläche der Integration (Geräte, Erkennung und Konfiguration).
  3. Öffne den Bildschirm Konfiguration der Integration, fülle die Einstellungen aus und speichere.
  4. Du kannst sie auch direkt über die URL ihres Repositorys installieren: https://github.com/guim31/gladys-n8n.

n8n benötigt Gladys >=5.1.0. Der Katalog in Gladys wird stündlich aktualisiert, eine neue Version ist also spätestens eine Stunde nach ihrer Veröffentlichung verfügbar.

Du nutzt Gladys noch nicht? Es ist kostenlos und Open Source: folge der Installationsanleitung, um loszulegen.

Über externe Integrationen​

n8n ist eine externe Integration: eine Community-Integration, die als Docker-Container verpackt und auf GitHub veröffentlicht wird. Gladys installiert sie mit einem Klick und führt sie in einer vom Kern isolierten Sandbox aus. Sie wird von guim31 veröffentlicht und gepflegt, nicht vom Gladys-Kernteam.

Abonniere den Newsletter von Gladys Assistant

Ein paar E-Mails im Monat zu neuen Releases und Neuigkeiten aus dem Projekt. Verschickt von Pierre-Gilles Leymarie, dem Gründer des Projekts. Jederzeit abbestellbar 🙂