buildbar
Ein Bootcamp derÖsterreich Werbung
← Zum Bootcamp

ÖW AI Automation Bootcamp · Wien

Was ihr in vier Tagen gebaut habt

Vorhaben aus dem Tourismus-Alltag, gebaut mit n8n und Claude Code. Manche von euch haben inzwischen mehr als eines. Jede Karte zeigt, was die Vorhaben tun, wie die Abläufe in n8n aussehen und was schon klappt. Die Stationen in den Ablaufbildern tragen die Namen, die ihr auch im n8n-Editor seht.

Vorhaben
13
Abläufe in n8n
48
Stand
24.09.2026, Ende des Bootcamps

Dieselbe Bilanz gibt es auch als Seite bei Claude.

Dein Repository zum Mitnehmen

Am Ende liegt alles, was du gebaut hast, in deinem eigenen GitHub-Repository und auf deinem Rechner: jeder Workflow als Datei, deine App, die Beschreibung. Die Bootcamp-n8n läuft weiter. Du musst nichts umziehen, aber du hast alles bei dir.

So gibst du es deiner Claude

Klapp unten deinen Namen auf, drück „Auftrag kopieren“ und füg den Text in deine Claude-Sitzung ein.

Und zur Kontrolle

„Zeig mir, was jetzt in meinem Repository liegt.“

  1. Claude holt jeden deiner Workflows

    per Befehl aus der n8n, ohne etwas abzutippen, und legt ihn als Datei in den Ordner workflows/. Vorher zeigt sie dir, wo Passwörter, Mailadressen oder Telefonnummern stehen.

  2. Deine App und die Beschreibung

    kommen dazu, falls noch nicht drin. Dann schiebt Claude alles zu GitHub.

  3. Du schaust nach

    Claude zeigt dir eine Tabelle, ob jede Datei vollständig ist. Auf GitHub liegt im Ordner workflows/ für jeden Workflow aus deiner Liste unten eine Datei.

  4. Auf deinen Rechner

    Arbeitest du mit der Desktop-App, liegt alles schon in deinem Projektordner. Arbeitest du im Browser, holst du es dir auf GitHub über Code → Download ZIP.

Was nicht in die Dateien kommt: Passwörter und Zugangsschlüssel (die bleiben geschützt auf der n8n) und Tabellen, in denen Namen oder Kontakte stehen. Falls du später auf eine eigene n8n umziehst, legst du die Zugänge dort neu an. Die Liste dafür steht unten bei dir. Wie Teilen und Umziehen geht, steht unter Technik.

Peter10 Workflows

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Halte dich dabei an diese Regeln:
1. Gibt es noch kein eigenes privates Repository, leg es zuerst an.
2. Sichere jeden meiner Workflows (Name beginnt mit „Peter:“) als eigene Datei im Ordner workflows/.
3. Schreib keinen Workflow von Hand ab. Hol ihn per Befehl über die n8n-API und speichere ihn per Skript. Den Schlüssel findest du in .mcp.json. Nur wenn es keinen Schlüssel gibt: n8n_get_workflow. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir, statt zu kürzen.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Sichere außerdem den Inhalt der Tabellen peter_gemeinden, peter_angebot_quellen, peter_ausflugsziele, peter_wissen, peter_angebote und peter_events als CSV im Ordner daten/.
8. Ich habe 2 Vorhaben (Gedruckte Morgenpost für Kärntens Hotelgäste, Wöchentliche Presseschau zum Kärntner Tourismus). Leg in der README für jedes einen eigenen Abschnitt an und schreib dazu, welche Dateien aus workflows/ dazugehören.
9. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
10. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
11. Dann committen und pushen.
  • Deine 8 Morgenpost-Workflows kommen als Dateien in den Ordner workflows/ in deinem Repository, auch die neue Tagesplan-Seite vom 23.09.
  • Deine Seiten für die Hotels (Anmeldung, Tagesplan, Angebote, Druckseite) stecken schon in diesen Workflows. Liegen auf deinem Rechner eigene Dateien, aus denen sie gebaut sind (zum Beispiel tagesplan.js), kommen die mit in dein Repository.
  • Gemeinden, Ausflugsziele, Angebotsquellen und dein Wissen des Tages nimmst du komplett mit. Die Hotels mit ihren Mailadressen, die Tagespläne und die Bilder bleiben auf der n8n.
  • Falls du noch kein eigenes Repository hast, legen wir es am 24.09. gleich zu Beginn an. Und wir halten gemeinsam im README fest, dass die Morgenpost nach dem Bootcamp weiterläuft.
Diese Dateien entstehen im Ordner workflows/
Workflow in n8nDatei
Peter: Morgenpostworkflows/morgenpost.json
Peter: Morgenpost Angebote vorschlagenworkflows/morgenpost-angebote-vorschlagen.json
Peter: Morgenpost Angebote freigebenworkflows/morgenpost-angebote-freigeben.json
Peter: Morgenpost Anmeldungworkflows/morgenpost-anmeldung.json
Peter: Morgenpost Tagesplanworkflows/morgenpost-tagesplan.json
Peter: Morgenpost Tagesplan-Seiteworkflows/morgenpost-tagesplan-seite.json
Peter: Morgenpost Druck-Linkworkflows/morgenpost-druck-link.json
Peter: Morgenpost Bilderworkflows/morgenpost-bilder.json
Peter: Presseschau sammelnworkflows/presseschau-sammeln.json
Peter: Presseschau Wochenberichtworkflows/presseschau-wochenbericht.json
Deine Tabellen

Der Inhalt von peter_gemeinden, peter_angebot_quellen, peter_ausflugsziele, peter_wissen, peter_angebote und peter_events darf mit. Das steht schon in deinem Auftrag oben.

Bleiben auf der n8n:

  • peter_betriebe Mailadressen der Rezeptionen, Prüfsummen der Hotel-Codes und die persönlichen Link-Schlüssel der Häuser.
  • peter_einstellungen Enthält den Freischalt-Code und die Absenderadresse; ins README nur die Liste der Einträge mit Platzhaltern.
  • peter_tagesplan Eingaben der Hotels (Menüs, Programm, Freitext) sind Kundendaten der Betriebe; derzeit nur Testeinträge.
  • peter_angebot_freigaben Auswahl der einzelnen Hotels; hängt an den Hotelzeilen, die auf der n8n bleiben, und stammt nur aus Tests.
  • peter_morgenpost_archiv Fertige Druckseiten samt Zugangscodes der Druck-Links; entstehen täglich neu und sind groß (rund 19.000 Zeichen je Zeile).
  • peter_bilddaten Eingebettete Bilder (Base64), zu groß fürs Repository; Nutzungsrechte für Druck durch Hotels ungeklärt.
  • peter_bilder Bildnachweise mit Namen der Fotografierenden und Dateinamen aus der Bilddatenbank; gehört zu den Bildern mit ungeklärten Rechten.

Zugänge, die auf der n8n bleiben: KI (Claude), Mailversand. Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

Betty11 Workflows · App

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Meine App ist veröffentlicht und wird aus dem Ordner frontend-starter/ gebaut. Deshalb gilt zusätzlich:
– Den Ordner frontend-starter/ nicht anfassen: nichts umbenennen, verschieben, löschen oder ersetzen. Funde dort nur zeigen.
– Nicht veröffentlichen (kein /prepare, /publish, /update, /deploy) und keinen Webhook einrichten.
– Auf main bleiben, keinen Branch anlegen.
Halte dich dabei an diese Regeln:
1. Mein Repository ist TVBEugendorf/ai-automation-bootcamp und bleibt es: kein neues anlegen, nichts umbenennen, git remote nicht ändern.
2. Sichere jeden meiner Workflows (Name beginnt mit „Betty:“) als eigene Datei im Ordner workflows/.
3. Schreib keinen Workflow von Hand ab. Hol ihn per Befehl über die n8n-API und speichere ihn per Skript. Den Schlüssel findest du in .mcp.json. Nur wenn es keinen Schlüssel gibt: n8n_get_workflow. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir, statt zu kürzen.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Sichere außerdem den Inhalt der Tabellen betty_kampagnen, betty_naechtigungen und betty_trackinglink_vorgaben als CSV im Ordner daten/.
8. Ich habe 4 Vorhaben (Kampagnenzahlen auf einen Blick, Trendbericht für die Vollversammlung, Nächtigungsbericht für jeden Zeitraum, Einheitliche Trackinglinks für Kampagnen). Leg in der README für jedes einen eigenen Abschnitt an und schreib dazu, welche Dateien aus workflows/ dazugehören.
9. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
10. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
11. Dann committen und pushen.
  • Deine 11 Workflows kommen als einzelne Dateien in den Ordner workflows/: fünf für die Kampagnenzahlen, vier für den Trendbericht, dazu der Nächtigungsbericht und die Trackinglinks.
  • Deine App liegt schon in deinem Repository und ist mit deinem Passwort online. Am 24.09. kommt eine kurze Beschreibung dazu, die alle vier Vorhaben erklärt.
  • Deine Kampagnen, die Vorgaben für die Trackinglinks und die Nächtigungszahlen kommen als Dateien mit ins Repository. Personendaten sind darin keine.
  • Deine Zugangsdaten zu Matomo und alle Passwörter bleiben draußen. Die fertigen Trendberichte bleiben auf der n8n; einen Bericht, den du behalten willst, speicherst du als eigene Datei.
Diese Dateien entstehen im Ordner workflows/
Workflow in n8nDatei
Betty: Kampagnen-Monitorworkflows/kampagnen-monitor.json
Betty: Kampagnen-Datenworkflows/kampagnen-daten.json
Betty: Einstiegsseitenworkflows/einstiegsseiten.json
Betty: Kampagnen-Einordnungworkflows/kampagnen-einordnung.json
Betty: Matomo-Kampagnenworkflows/matomo-kampagnen.json
Betty: Trackinglinksworkflows/trackinglinks.json
Betty: Nächtigungen Importworkflows/naechtigungen-import.json
Betty: Stadt Salzburg Nächtigungenworkflows/stadt-salzburg-naechtigungen.json
Betty: Trendbericht Zahlenworkflows/trendbericht-zahlen.json
Betty: Trend-Rechercheworkflows/trend-recherche.json
Betty: Auswertung Zeitraumworkflows/auswertung-zeitraum.json
Deine Tabellen

Der Inhalt von betty_kampagnen, betty_naechtigungen und betty_trackinglink_vorgaben darf mit. Das steht schon in deinem Auftrag oben.

Bleiben auf der n8n:

  • betty_partnerzahlen Leer (die Testzeilen wurden am 22.09. gelöscht), nur die Spalten kommen über die Workflows mit.
  • betty_trendberichte Im Zweifel nein: KI-Rechercheergebnisse mit Auszügen aus fremden Quellen, jederzeit neu erzeugbar; einen Bericht, der bleiben soll, als fertiges Dokument ablegen.
  • betty_trackinglinks Leer, nichts mitzunehmen; die Spalten stehen im Workflow Trackinglinks. Künftig steht in der Spalte erstellt_von, wer einen Link erstellt hat (Personenbezug), deshalb Inhalt auch später nicht ins Repository.

Zugänge, die auf der n8n bleiben: Gemeinsamer Schlüssel zwischen App und Workflows, damit n…, Webseiten-Statistik (Matomo), KI (Claude). Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

Sheila10 Workflows · App

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Meine App ist veröffentlicht und wird aus dem Ordner social-dashboard/ gebaut. Deshalb gilt zusätzlich:
– Den Ordner social-dashboard/ nicht anfassen: nichts umbenennen, verschieben, löschen oder ersetzen. Funde dort nur zeigen.
– Nicht veröffentlichen (kein /prepare, /publish, /update, /deploy) und keinen Webhook einrichten.
– .mcp.json nicht ändern.
Halte dich dabei an diese Regeln:
1. Mein Repository ist SheBst/ai-automation-bootcamp und bleibt es: kein neues anlegen, nichts umbenennen, git remote nicht ändern.
2. Sichere jeden meiner Workflows (Name beginnt mit „Sheila:“ oder „sb:“) als eigene Datei im Ordner workflows/.
3. Hol jeden Workflow mit n8n_get_workflow und speichere ihn, ohne etwas zu kürzen. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Sichere außerdem den Inhalt der Tabelle sb_veranstaltungen als CSV im Ordner daten/.
8. Ich habe 2 Vorhaben (Mediaplanung für Schloss Hof im Griff, Instagram-Vergleich mit anderen Kulturhäusern). Leg in der README für jedes einen eigenen Abschnitt an und schreib dazu, welche Dateien aus workflows/ dazugehören.
9. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
10. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
11. Dann committen, pushen und einen Pull Request nach main anlegen.
  • Deine 10 Workflows für die Mediaplanung und den Instagram-Vergleich kommen als Dateien in den Ordner workflows/ in deinem Repository.
  • Deine App für den Instagram-Vergleich liegt schon im Repository im Ordner social-dashboard und ist seit dem 23.09. veröffentlicht.
  • Deine Veranstaltungsliste kommt mit. Der Mediaplan bleibt auf der n8n, weil Namen und Mailadressen drinstehen, und die gesammelten Instagram-Beiträge und Bilder bleiben, wo sie sind, weil sie anderen gehören.
  • Weil du im Browser arbeitest, hast du noch keine Kopie auf deinem Rechner: Wir laden dein Repository am 24.09. gemeinsam als eine Datei herunter.
Diese Dateien entstehen im Ordner workflows/
Workflow in n8nDatei
Sheila: Veranstaltungs-Endauswertungworkflows/veranstaltungs-endauswertung.json
Sheila: Fristen-Wächter Mediaplanungworkflows/fristen-waechter-mediaplanung.json
Sheila: Dashboard Mediaplanungworkflows/dashboard-mediaplanung.json
Sheila: Material-Abgabeworkflows/material-abgabe.json
Sheila: Reporting erfassenworkflows/reporting-erfassen.json
sb: Benchmark sammelnworkflows/benchmark-sammeln.json
sb: Benchmark einordnenworkflows/benchmark-einordnen.json
sb: Benchmark auswertenworkflows/benchmark-auswerten.json
sb: Thumbnails sichernworkflows/thumbnails-sichern.json
sb: Konzept pruefenworkflows/konzept-pruefen.json
Deine Tabellen

Der Inhalt von sb_veranstaltungen darf mit. Das steht schon in deinem Auftrag oben.

Bleiben auf der n8n bzw. in der ÖW-Supabase:

  • sb_mediaplan Spalten mit Namen, Anrede und Mailadressen von Ansprechpersonen und Produktmanagement; laut Review erfundene Demodaten, im Zweifel trotzdem nein. Wer eine Demo-Datei will: Zeilen ohne diese Spalten.
  • sb_auswertungen Leer, nur die Struktur kommt mit.
  • sb_ig_accounts (ÖW-Supabase) Keine n8n-Tabelle; die Kontenliste enthält Fan- und Creator-Seiten von Einzelpersonen.
  • sb_ig_posts (ÖW-Supabase) Keine n8n-Tabelle; fremde Beiträge mit Bildunterschriften und KI-Etiketten, teils von Einzelpersonen, dazu Embeddings (groß).
  • sb_ig_snapshots (ÖW-Supabase) Keine n8n-Tabelle; Zeitreihe zu denselben fremden Beiträgen, entsteht beim nächsten Lauf neu.
  • Bucket sb-thumbs (ÖW-Supabase) Kopien fremder Instagram-Bilder (Rechte Dritter), Bilddateien gehören nicht ins Repo; 238 laut Ausführung 941, supabase.json nennt keine Objektzahl.

Zugänge, die auf der n8n bleiben: KI (Claude), Mailversand, Webseiten-Abruf (Apify), KI (OpenAI), Datenbank (Supabase), Login für die Formulare Reporting und Endauswertung und f…, Geheimer Schlüssel zwischen der veröffentlichten App und…. Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

Claudia7 Workflows · App

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Meine App ist veröffentlicht und wird aus dem Ordner frontend-starter/ gebaut. Deshalb gilt zusätzlich:
– Den Ordner frontend-starter/ nicht anfassen: nichts umbenennen, verschieben, löschen oder ersetzen. Funde dort nur zeigen.
– Nicht veröffentlichen (kein /prepare, /publish, /update, /deploy) und keinen Webhook einrichten.
– Auf main bleiben, keinen Branch anlegen.
Halte dich dabei an diese Regeln:
1. Mein Repository ist claudia1tvb/ai-automation-bootcamp und bleibt es: kein neues anlegen, nichts umbenennen, git remote nicht ändern.
2. Sichere jeden meiner Workflows (Name beginnt mit „Claudia:“) als eigene Datei im Ordner workflows/.
3. Schreib keinen Workflow von Hand ab. Hol ihn per Befehl über die n8n-API und speichere ihn per Skript. Den Schlüssel findest du in .mcp.json. Nur wenn es keinen Schlüssel gibt: n8n_get_workflow. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir, statt zu kürzen.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Sichere außerdem den Inhalt der Tabellen claudia_verlauf und claudia_budget als CSV im Ordner daten/.
8. Ich habe 2 Vorhaben (Lücken aus dem Quality Report schließen, Rechnungen einreichen, prüfen und ablegen). Leg in der README für jedes einen eigenen Abschnitt an und schreib dazu, welche Dateien aus workflows/ dazugehören.
9. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
10. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
11. Dann committen und pushen.
  • Du hast zwei Vorhaben gebaut: die Lücken aus dem Quality Report und die Rechnungen. Deine 7 Workflows kommen als Dateien in den Ordner workflows/, und in der Beschreibung deines Repositorys bekommt jeder der beiden Teile einen eigenen nächsten Schritt.
  • Deine App liegt in deinem Repository und ist seit dem 24.09. veröffentlicht. Dein Programm zum Ablegen der Rechnungen läuft bisher nur auf deinem Rechner und kommt mit ins Repository.
  • Die Arbeitsliste mit den Betrieben und die Rechnungen mit Namen und Beträgen bleiben auf der n8n, weil Kontaktdaten und Namen drinstehen. Deine Budget-Töpfe und die Quartals-Bilanz kommen mit.
  • Deine abgelegten Rechnungen und die Excel-Liste dazu bleiben nur bei dir und kommen nicht ins Repository.
Diese Dateien entstehen im Ordner workflows/
Workflow in n8nDatei
Claudia: Report einlesenworkflows/report-einlesen.json
Claudia: Luecken recherchierenworkflows/luecken-recherchieren.json
Claudia: Arbeitslisteworkflows/arbeitsliste.json
Claudia: Rechnung erfassenworkflows/rechnung-erfassen.json
Claudia: Rechnungslisteworkflows/rechnungsliste.json
Claudia: Rechnungen ablegenworkflows/rechnungen-ablegen.json
Claudia: Rechnungen Morgenmailworkflows/rechnungen-morgenmail.json
Deine Tabellen

Der Inhalt von claudia_verlauf und claudia_budget darf mit. Das steht schon in deinem Auftrag oben.

Bleiben auf der n8n:

  • claudia_qualitaet Einträge von Betrieben mit gefundenen Telefonnummern, Mailadressen und Adressen, auch von Ein-Personen-Betrieben
  • claudia_rechnungen Rechnungen mit Ausstellern, Beträgen und Namen der einreichenden und beauftragenden Personen
  • claudia_posten Budgetanteile der Rechnungen mit freien Bemerkungen, gehören zu den Rechnungen
  • claudia_dateien Rechnungs-PDFs als eingebettete Dateien (Base64), zu groß und mit Daten Dritter
  • claudia_protokoll Protokoll, wer welche Rechnung wann bearbeitet hat, mit Namen
  • claudia_personen Vornamen und Kürzel von Kolleginnen und Kollegen

Zugänge, die auf der n8n bleiben: Schlüssel, mit dem Claudias App und ihr Ablage-Programm a…, Benutzer und Passwort für das Formular zum Hochladen des…, KI (Claude), Google-Daten (DataForSEO). Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

Christina10 Workflows

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Halte dich dabei an diese Regeln:
1. Gibt es noch kein eigenes privates Repository, leg es zuerst an.
2. Sichere jeden meiner Workflows (Name beginnt mit „Christina:“) als eigene Datei im Ordner workflows/.
3. Schreib keinen Workflow von Hand ab. Hol ihn per Befehl über die n8n-API und speichere ihn per Skript. Den Schlüssel findest du in .mcp.json. Nur wenn es keinen Schlüssel gibt: n8n_get_workflow. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir, statt zu kürzen.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Sichere außerdem den Inhalt der Tabelle christina_gastro_laufprotokoll als CSV im Ordner daten/.
8. Ich habe 2 Vorhaben (Öffnungszeiten der Gastronomie abgleichen, Wochenpost für Gäste automatisch vorbereiten). Leg in der README für jedes einen eigenen Abschnitt an und schreib dazu, welche Dateien aus workflows/ dazugehören.
9. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
10. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
11. Dann committen und pushen.
  • Deine 9 Workflows, auch die neue Wochenpost, kommen als Dateien in den Ordner workflows/ in deinem Repository.
  • Deine Ordner logik und wochenpost auf deinem Rechner kommen mit ins Repository: Dort liegt das Original, aus dem deine Workflows gebaut sind.
  • Die Liste deiner 79 Betriebe und die gefundenen Abweichungen bleiben auf der n8n, weil Angaben zu fremden Betrieben drinstehen. Die Liste kannst du jederzeit neu aufbauen lassen.
  • Falls du noch kein eigenes Repository hast, legen wir es am 24.09. gleich zu Beginn an. Deine Mailadresse und eine Telefonnummer aus einem Beispiel ersetzen wir in den exportierten Dateien durch Platzhalter.
Diese Dateien entstehen im Ordner workflows/
Workflow in n8nDatei
Christina: Teil Website-Leiterworkflows/teil-website-leiter.json
Christina: Öffnungszeiten-Check Gastronomieworkflows/oeffnungszeiten-check-gastronomie.json
Christina: Quartalsbericht geprüfte Betriebeworkflows/quartalsbericht-gepruefte-betriebe.json
Christina: Befund quittierenworkflows/befund-quittieren.json
Christina: Teil Detailseite lesenworkflows/teil-detailseite-lesen.json
Christina: Betriebsliste aufbauenworkflows/betriebsliste-aufbauen.json
Christina: Teil Social Mediaworkflows/teil-social-media.json
Christina: Wochenpostworkflows/wochenpost.json
Christina: Teil Google abrufenworkflows/teil-google-abrufen.json
Christina: Fehler-Melderworkflows/fehler-melder.json
Deine Tabellen

Der Inhalt von christina_gastro_laufprotokoll darf mit. Das steht schon in deinem Auftrag oben.

Bleiben auf der n8n:

  • christina_gastro_stammdaten Angaben zu fremden Betrieben (Namen, teils mit Inhabernamen, Adressen, Koordinaten, Facebook- und Instagram-Konten); lässt sich mit „Betriebsliste aufbauen“ jederzeit neu erzeugen.
  • christina_gastro_befunde Abweichungen je fremdem Betrieb mit Zitaten aus deren Seiten, dazu Stand aus Testläufen; baut sich beim ersten echten Lauf neu auf.

Zugänge, die auf der n8n bleiben: KI (Claude), Mailversand, Google-Daten (DataForSEO), Webseiten-Abruf (Apify). Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

TeresaWorkflows auf der eigenen n8n · App

Dein Auftrag für Claude

Mach mein Repository zum Mitnehmen fertig, wie in der CLAUDE.md unter „Dein Repository zum Mitnehmen“ beschrieben. Dabei wird nichts gelöscht und nichts entfernt: weder in n8n noch im Repository noch auf meinem Rechner. Kommt dir etwas überflüssig vor, zeig es mir nur.
Meine App ist veröffentlicht und wird aus dem Ordner meeting-app/ gebaut. Deshalb gilt zusätzlich:
– Den Ordner meeting-app/ nicht anfassen: nichts umbenennen, verschieben, löschen oder ersetzen. Funde dort nur zeigen.
– Nicht veröffentlichen (kein /prepare, /publish, /update, /deploy) und keinen Webhook einrichten.
– Auf main bleiben, keinen Branch anlegen.
Halte dich dabei an diese Regeln:
1. Mein Repository ist tessk23/ai-automation-bootcamp und bleibt es: kein neues anlegen, nichts umbenennen, git remote nicht ändern.
2. Sichere jeden Workflow meines Protokoll-Vorhabens von meiner eigenen n8n als eigene Datei im Ordner workflows/.
3. Schreib keinen Workflow von Hand ab. Hol ihn per Befehl über die n8n-API und speichere ihn per Skript. Den Schlüssel findest du in .mcp.json. Nur wenn es keinen Schlüssel gibt: n8n_get_workflow. Wirkt eine Antwort abgeschnitten, brich bei diesem Workflow ab und sag es mir, statt zu kürzen.
4. Schreib in jede Datei nur name, nodes, connections und settings. Bei credentials nur den Namen, die id nicht. Sonst nichts ändern.
5. Zeig mir alle Stellen mit Passwörtern, Schlüsseln, Mailadressen und Telefonnummern, bevor du etwas ersetzt. Ersetzen nur in workflows/ und daten/.
6. Prüf am Ende: so viele Dateien wie Workflows, und in jeder Datei so viele Knoten wie in n8n. Zeig mir das als Tabelle.
7. Nimm keine Build-Dateien mit (node_modules, .next, *.tsbuildinfo) und keine .env-Dateien. Die .gitignore nur ergänzen. Liegen solche Dateien schon im Repository, zeig sie mir nur.
8. Zeig mir vor dem Commit git status und nimm nur die Dateien dieses Auftrags auf. Stehen dort Änderungen, die nicht aus diesem Auftrag stammen, halt an und frag mich.
9. Dann committen und pushen.
  • Deine App „Protokoll“ liegt schon in deinem Repository im Ordner meeting-app und ist online.
  • Deine Workflows liegen auf deiner eigenen n8n. Am 24.09. legst du Kopien davon als Dateien in den Ordner workflows/, dann liegt alles an einem Ort; auf deiner n8n bleiben sie unverändert stehen.
  • Aufnahmen, Protokolle und die Zugangscodes deiner Kolleginnen und Kollegen kommen nicht ins Repository.
  • Die alte Übungsseite (Testbank) bleibt stehen, und eine kurze Beschreibung erklärt, wozu sie da ist, wie deine App funktioniert und was als Nächstes kommt.

Zugänge, die auf der n8n bleiben: Zugangscodes für Kolleginnen und Kollegen, KI (OpenAI), KI (Claude), Protokoll als Aufgabe in Asana anlegen. Die Workflow-Dateien merken sich nur den Namen, nie das Passwort.

Die Vorhaben

Peter Müllner · Kärnten Werbung

Gedruckte Morgenpost für Kärntens Hotelgäste

am letzten Tag dazugekommenAm 24.09. ist ein zweites Vorhaben dazugekommen: eine Presseschau, die jeden Morgen neue Artikel über den Kärntner Tourismus sammelt, von der KI einordnen lässt und jeden Montag als fertige Mail verschickt. Außerdem kann ein Hotel seine Morgenpost jetzt über einen Link in jeder Mail pausieren, etwa für die Winterschließung, oder ganz abbestellen.

Vorhaben 1Gedruckte Morgenpost für Kärntens Hotelgäste

An der Rezeption fragen Gäste jeden Morgen nach Wetter, Ausflügen und dem Abendessen. Peter baut dafür eine Morgenpost auf einem A4-Blatt: Wetter, Termine und Angebote aus der Region, ein Ausflugstipp, das Wissen des Tages und eine Begrüßung, die die KI schreibt, dazu Menüzettel zum Ankreuzen. Die Hotels melden sich selbst an und tragen ihren Tagesplan über einen persönlichen Link ein; über denselben Link können sie die Morgenpost auch pausieren oder abbestellen. Zur gewählten Uhrzeit bekommt die Rezeption einen Link, öffnet die fertige Seite und druckt sie aus.

So sieht das Ergebnis aus
Die Seite, auf der das Hotel seinen Tagesplan einträgt
Die Seite, auf der das Hotel seinen Tagesplan einträgtAbendmenü, Angebot des Hauses, Programm und Öffnungszeiten, dazu die Angebote aus der Region, die eine KI jede Woche auf offiziellen Seiten findet, jedes mit Quelle. Nach dem Speichern bestätigt die Seite die Anmeldung.
Die gedruckte Morgenpost für ein Hotel
Die gedruckte Morgenpost für ein HotelSo kam sie am 22. September aus dem Lauf um 6 Uhr. Das Etikett „Testlauf mit Beispieldaten“ setzt der Ablauf selbst.
Die Mail mit Angebotsvorschlägen an die Rezeption
Die Mail mit Angebotsvorschlägen an die RezeptionAus dem wöchentlichen Lauf: Vorschläge zum Freigeben, jeder mit Beleg von der Quellseite.
So spielen die Teile zusammen

Acht Workflows greifen ineinander wie Zahnräder: Hotels melden sich an und pflegen über ihren persönlichen Link Tagesplan, Angebote und Pausen, die KI schlägt jede Woche neue Angebote vor. Daraus baut die Morgenpost jeden Tag das Blatt, das über den Druck-Link samt Bildern an der Rezeption landet.

  • Peter: Morgenpost AnmeldungHotels melden sich selbst an
  • Peter: Morgenpost Tagesplan-SeiteTagesplan und Pause per Link
  • Peter: Morgenpost TagesplanTagesplan mit Hotel-Code eintragen
  • Peter: Morgenpost Angebote vorschlagenKI sucht wöchentlich Angebote
  • Peter: Morgenpost Angebote freigebenHotel wählt seine Angebote aus
  • Peter: Morgenpostbaut täglich die Morgenpost
  • Peter: Morgenpost Druck-Linkzeigt die Seite zum Drucken
  • Peter: Morgenpost Bilderliefert Fotos und Logo
  • Peter: Morgenpost AnmeldungPeter: Morgenpost Tagesplan-Seitepersönlicher Link per Mail
  • Peter: Morgenpost AnmeldungPeter: Morgenpost TagesplanHotel-Code per Mail
  • Peter: Morgenpost AnmeldungPeter: MorgenpostHotel steht in Liste
  • Peter: Morgenpost Tagesplan-SeitePeter: MorgenpostTagesplan, Angebote, Pause
  • Peter: Morgenpost TagesplanPeter: MorgenpostMenüs, Programm, Freischaltung
  • Peter: MorgenpostPeter: Morgenpost Tagesplan-SeiteLinks zu Tagesplan und Pause
  • Peter: Morgenpost Angebote vorschlagenPeter: Morgenpost Tagesplan-SeiteAngebote zum Ankreuzen
  • Peter: Morgenpost Angebote vorschlagenPeter: Morgenpost Angebote freigebenVorschläge per Mail
  • Peter: Morgenpost Angebote freigebenPeter: Morgenpostgewählte Angebote aufs Blatt
  • Peter: MorgenpostPeter: Morgenpost Druck-LinkSeite ins Archiv, Link
  • Peter: Morgenpost Druck-LinkPeter: Morgenpost BilderDruckseite lädt Fotos
Peter: Morgenpost Anmeldungwenn ein Hotel das Anmeldeformular abschickt

Hotels melden sich mit dem Freischalt-Code der Kärnten Werbung selbst an und bekommen per Mail ihren persönlichen Link zum Tagesplan.

janeinjanein123Anmeldeformular · formTrigger · Station 1: Hotel füllt das Formular ausAnmeldeformularSTART1Einstellungen holen · dataTable · Station 2: Freischalt-Code prüfenEinstellungen holenDATEN2Freischalt-Code richtig? · if · Station 2: Freischalt-Code prüfenFreischalt-Coderichtig?WEICHE2Seite: Code falsch · form · Station 2: Freischalt-Code prüfenSeite: Code falschANTWORT2Betriebe holen · dataTable · Station 5: Neu oder schon bekannt?Betriebe holenDATEN5Ort suchen (OpenStreetMap) · httpRequest · Station 3: Ort in Kärnten findenOrt suchen(OpenStreetMap)HTTP3Ort auswählen · code · Station 3: Ort in Kärnten findenOrt auswählenCODE3Ort gefunden? · if · Station 3: Ort in Kärnten findenOrt gefunden?WEICHE3Seite: Hinweis · form · Station 3: Ort in Kärnten findenSeite: HinweisANTWORT3Kurz warten (OpenStreetMap-Regel) · wait · Station 4: Tourismusregion automatisch bestimmenKurz warten(OpenStreetMap-Regel)FELD4Gemeinde bestimmen (OpenStreetMap) · httpRequest · Station 4: Tourismusregion automatisch bestimmenGemeinde bestimmen(OpenStreetMap)HTTP4Gemeinden holen · dataTable · Station 4: Tourismusregion automatisch bestimmenGemeinden holenDATEN4Anmeldung prüfen · code · Station 5: Neu oder schon bekannt?Anmeldung prüfenCODE5Hotel-Code erzeugen · crypto · Station 6: Hotel-Code und persönlichen Link erzeugenHotel-Code erzeugenFELD6Prüfsumme bilden · crypto · Station 6: Hotel-Code und persönlichen Link erzeugenPrüfsumme bildenFELD6Wie speichern? · switch · Station 6: Hotel-Code und persönlichen Link erzeugenWie speichern?WEICHE6Neuen Betrieb speichern · dataTable · Station 6: Hotel-Code und persönlichen Link erzeugenNeuen BetriebspeichernDATEN6Angaben und Code erneuern · dataTable · Station 6: Hotel-Code und persönlichen Link erzeugenAngaben und CodeerneuernDATEN6Nur Code erneuern · dataTable · Station 6: Hotel-Code und persönlichen Link erzeugenNur Code erneuernDATEN6Hotel-Code per Mail (Brevo) · sendInBlue · Station 7: Willkommens-Mail, fertigHotel-Code per Mail(Brevo)MAIL7Seite: Angemeldet · form · Station 7: Willkommens-Mail, fertigSeite: AngemeldetANTWORT7Schlüssel erzeugen · crypto · Station 6: Hotel-Code und persönlichen Link erzeugenSchlüssel erzeugenFELD6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Hotel füllt das Formular aus

    Das Hotel gibt Name, Postleitzahl, Ort und die Mail-Adresse der Rezeption ein. Es wählt, wann die Morgenpost kommen soll: frühmorgens oder schon am Vorabend. Dazu kommt der Freischalt-Code der Kärnten Werbung.

    In n8n: Anmeldeformular

  2. Freischalt-Code prüfen

    Nur wer den richtigen Freischalt-Code kennt, kommt weiter. Sonst erscheint eine freundliche Hinweisseite.

    In n8n: Einstellungen holen · Freischalt-Code richtig? · Seite: Code falsch

  3. Ort in Kärnten finden

    OpenStreetMap, die freie Weltkarte, sucht Postleitzahl und Ort. Es zählen nur Treffer in Kärnten. Daraus kommt die genaue Lage für die Wettervorhersage.

    In n8n: Ort suchen (OpenStreetMap) · Ort auswählen · Ort gefunden? · Seite: Hinweis

    WeicheWenn der Ort liegt in Kärnten: die Anmeldung geht weiter Sonst: eine freundliche Hinweisseite erscheint

  4. Tourismusregion automatisch bestimmen

    Nach einer kurzen Pause, wie OpenStreetMap es verlangt, wird die Gemeinde bestimmt. Eine Liste aller 132 Kärntner Gemeinden verrät die Tourismusregion. Das Hotel muss sie nicht selbst angeben.

    In n8n: Kurz warten (OpenStreetMap-Regel) · Gemeinde bestimmen (OpenStreetMap) · Gemeinden holen

  5. Neu oder schon bekannt?

    Ein kleines Programmstück prüft alle Angaben und schaut in der Hotelliste nach. Gleicher Name und gleiche Postleitzahl heißt: Das Hotel ist schon angemeldet.

    In n8n: Betriebe holen · Anmeldung prüfen

  6. Hotel-Code und persönlichen Link erzeugen

    Das Hotel bekommt einen zufälligen Hotel-Code und dazu einen persönlichen Link, der nur zu diesem einen Haus gehört. Vom Code steht in der Liste nur eine Art Fingerabdruck. Neue Hotels werden eingetragen, bekannte bekommen neue Zugangsdaten.

    In n8n: Hotel-Code erzeugen · Schlüssel erzeugen · Prüfsumme bilden · Wie speichern? · Neuen Betrieb speichern · Angaben und Code erneuern · Nur Code erneuern

  7. Willkommens-Mail, fertig

    Die Rezeption bekommt eine Willkommens-Mail mit dem Knopf „Tagesplan eintragen“. Er führt direkt auf die eigene Tagesplan-Seite, ganz ohne Code. Wer lieber das Formular nimmt, findet in der Mail auch den Hotel-Code.

    In n8n: Hotel-Code per Mail (Brevo) · Seite: Angemeldet

Peter: Morgenpost Tagesplan-Seitewenn die Rezeption ihren persönlichen Link aus der Mail öffnet und auf „Speichern“ oder einen der Knöpfe zum Pausieren klickt

Über ihren persönlichen Link öffnet die Rezeption eine fertig vorausgefüllte Seite, trägt Tagesplan und Angebote der Region in einem Schritt ein und kann die Morgenpost dort auch pausieren oder abbestellen.

janeinjaneinjaneinjaneinjaneinjaneinSeite öffnen · webhook · Station 1: Rezeption klickt auf ihren LinkSeite öffnenSTART1Einstellungen holen · dataTable · Station 1: Rezeption klickt auf ihren LinkEinstellungen holenDATEN1Betrieb suchen · dataTable · Station 1: Rezeption klickt auf ihren LinkBetrieb suchenDATEN1Link gültig? · if · Station 1: Rezeption klickt auf ihren LinkLink gültig?WEICHE1Pläne holen · dataTable · Station 2: Seite fertig vorausgefülltPläne holenDATEN2Angebote holen · dataTable · Station 2: Seite fertig vorausgefülltAngebote holenDATEN2Freigaben holen · dataTable · Station 2: Seite fertig vorausgefülltFreigaben holenDATEN2Seite bauen · code · Station 2: Seite fertig vorausgefülltSeite bauenCODE2Seite ausliefern · respondToWebhook · Station 2: Seite fertig vorausgefülltSeite ausliefernANTWORT2Seite: Link ungültig · respondToWebhook · Station 1: Rezeption klickt auf ihren LinkSeite: Link ungültigANTWORT1Speichern · webhook · Station 3: Eintragen, auch für mehrere TageSpeichernSTART3Einstellungen holen (Speichern) · dataTable · Station 3: Eintragen, auch für mehrere TageEinstellungen holen(Speichern)DATEN3Betrieb suchen (Speichern) · dataTable · Station 3: Eintragen, auch für mehrere TageBetrieb suchen(Speichern)DATEN3Link gültig? (Speichern) · if · Station 3: Eintragen, auch für mehrere TageLink gültig?(Speichern)WEICHE3Pläne holen (Speichern) · dataTable · Station 4: Eingaben prüfenPläne holen(Speichern)DATEN4Angebote holen (Speichern) · dataTable · Station 4: Eingaben prüfenAngebote holen(Speichern)DATEN4Freigaben holen (Speichern) · dataTable · Station 4: Eingaben prüfenFreigaben holen(Speichern)DATEN4Eingaben prüfen · code · Station 4: Eingaben prüfenEingaben prüfenCODE4Eingaben in Ordnung? · if · Station 4: Eingaben prüfenEingaben in Ordnung?WEICHE4Tagesplan speichern · dataTable · Station 5: Tagesplan und Angebote speichernTagesplan speichernDATEN5Freigaben aufbereiten · code · Station 5: Tagesplan und Angebote speichernFreigaben aufbereitenCODE5Freigaben da? · if · Station 5: Tagesplan und Angebote speichernFreigaben da?WEICHE5Freigaben speichern · dataTable · Station 5: Tagesplan und Angebote speichernFreigaben speichernDATEN5Betrieb bestätigen · dataTable · Station 6: Freischalten und bestätigenBetrieb bestätigenDATEN6Seite mit Bestätigung · code · Station 6: Freischalten und bestätigenSeite mit BestätigungCODE6Bestätigung ausliefern · respondToWebhook · Station 6: Freischalten und bestätigenBestätigungausliefernANTWORT6Seite: Eingabe prüfen · respondToWebhook · Station 4: Eingaben prüfenSeite: Eingabe prüfenANTWORT4Seite: Link ungültig (Speichern) · respondToWebhook · Station 3: Eintragen, auch für mehrere TageSeite: Link ungültig(Speichern)ANTWORT3Tagesplan oder Verwaltung? · if · Station 7: Pausieren, beenden oder löschenTagesplan oderVerwaltung?WEICHE7Löschen? · if · Station 7: Pausieren, beenden oder löschenLöschen?WEICHE7Betrieb ändern · dataTable · Station 7: Pausieren, beenden oder löschenBetrieb ändernDATEN7Seite nach Änderung · code · Station 7: Pausieren, beenden oder löschenSeite nach ÄnderungCODE7Tagespläne löschen · dataTable · Station 7: Pausieren, beenden oder löschenTagespläne löschenDATEN7Freigaben löschen · dataTable · Station 7: Pausieren, beenden oder löschenFreigaben löschenDATEN7Archiv löschen · dataTable · Station 7: Pausieren, beenden oder löschenArchiv löschenDATEN7Betrieb löschen · dataTable · Station 7: Pausieren, beenden oder löschenBetrieb löschenDATEN7Seite: Gelöscht · respondToWebhook · Station 7: Pausieren, beenden oder löschenSeite: GelöschtANTWORT7
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Rezeption klickt auf ihren Link

    In jeder Mail an die Rezeption steht ein persönlicher Link, der nur zu diesem einen Haus gehört. Es gibt keinen Code zum Abtippen. Passt der Link zu keinem Haus, erscheint ein freundlicher Hinweis.

    In n8n: Seite öffnen · Einstellungen holen · Betrieb suchen · Link gültig? · Seite: Link ungültig

    WeicheWenn der Link gehört zu einem angemeldeten Haus: die vorausgefüllte Seite erscheint Sonst: ein freundlicher Hinweis erscheint

  2. Seite fertig vorausgefüllt

    Ein kleines Programmstück baut die Seite im Design der Kärnten Werbung. Was sich selten ändert, steht schon vom letzten Eintrag da, darunter die Angebote der Region zum Ankreuzen. Hatte das Haus zuletzt kein Abendessen, bleibt der Menüteil zugeklappt.

    In n8n: Pläne holen · Angebote holen · Freigaben holen · Seite bauen · Seite ausliefern

  3. Eintragen, auch für mehrere Tage

    Die Rezeption trägt Menüs, Hausangebot, Programm, Öffnungszeiten und „Gut zu wissen“ ein. Ein Eintrag kann für bis zu zehn Tage gelten. Beim Klick auf „Speichern“ wird der Link noch einmal geprüft.

    In n8n: Speichern · Einstellungen holen (Speichern) · Betrieb suchen (Speichern) · Link gültig? (Speichern) · Seite: Link ungültig (Speichern)

  4. Eingaben prüfen

    Der Tag muss zwischen heute und 60 Tagen im Voraus liegen, sonst erscheint ein Hinweis. Menüs sind freiwillig: Ohne Menüs druckt die Morgenpost einfach keinen Menüzettel. Gilt der Eintrag für mehrere Tage, entsteht für jeden Tag eine eigene Zeile. Hier wird auch erkannt, ob jemand stattdessen pausieren oder abbestellen möchte.

    In n8n: Pläne holen (Speichern) · Angebote holen (Speichern) · Freigaben holen (Speichern) · Eingaben prüfen · Eingaben in Ordnung? · Seite: Eingabe prüfen

    WeicheWenn die Rezeption einen Tagesplan speichert: Tagesplan und Angebote werden gespeichert Sonst: die Morgenpost wird pausiert, beendet, wieder gestartet oder das Hotel gelöscht

  5. Tagesplan und Angebote speichern

    Jeder Tag kommt in die Tagesplan-Liste, schon vorhandene Tage werden überschrieben. Danach werden die Häkchen bei den Angeboten gespeichert, eine Zeile je Angebot.

    In n8n: Tagesplan speichern · Freigaben aufbereiten · Freigaben da? · Freigaben speichern

  6. Freischalten und bestätigen

    Beim ersten Eintrag ist die Anmeldung bestätigt, und das Hotel wird aktiv. Dann kommt dieselbe Seite mit einem grünen Balken zurück, schon auf den nächsten Tag gestellt.

    In n8n: Betrieb bestätigen · Seite mit Bestätigung · Bestätigung ausliefern

  7. Pausieren, beenden oder löschen

    Unten auf der Seite kann das Hotel die Morgenpost bis zu einem Datum pausieren, etwa für Umbau oder Winterschließung, sie beenden und später wieder starten. Wer alles löschen möchte, tippt zur Sicherheit den Namen des Hauses ein; dann verschwinden Hotel, Tagespläne, Angebots-Auswahl und alte Blätter, und der Link gilt nicht mehr.

    In n8n: Tagesplan oder Verwaltung? · Löschen? · Betrieb ändern · Seite nach Änderung · Tagespläne löschen · Freigaben löschen · Archiv löschen · Betrieb löschen · Seite: Gelöscht

Peter: Morgenpost Tagesplanwenn die Rezeption das Tagesplan-Formular abschickt

Der zweite Weg zum Tagesplan: Die Rezeption trägt mit ihrem Hotel-Code Menüs, Programm und Öffnungszeiten für einen Tag ein; beim ersten Mal wird das Hotel freigeschaltet.

janeinjaneinjaneinjaneinjaneinTagesplan-Formular · formTrigger · Station 1: Code und Tag eingebenTagesplan-FormularSTART1Prüfsumme bilden · crypto · Station 2: Hotel am Code erkennenPrüfsumme bildenFELD2Betrieb suchen · dataTable · Station 2: Hotel am Code erkennenBetrieb suchenDATEN2Hotel-Code gültig? · if · Station 2: Hotel am Code erkennenHotel-Code gültig?WEICHE2Seite: Code falsch · form · Station 2: Hotel am Code erkennenSeite: Code falschANTWORT2Pläne holen · dataTable · Station 3: Zweite Seite vorausfüllenPläne holenDATEN3Formular vorbereiten · code · Station 3: Zweite Seite vorausfüllenFormular vorbereitenCODE3Tag in Ordnung? · if · Station 3: Zweite Seite vorausfüllenTag in Ordnung?WEICHE3Seite: Hinweis · form · Station 3: Zweite Seite vorausfüllenSeite: HinweisANTWORT3Tagesplan ausfüllen · form · Station 4: Menüs und Programm eintragenTagesplan ausfüllenANTWORT4Eintrag aufbereiten · code · Station 5: Aufbereiten und speichernEintrag aufbereitenCODE5Eintrag in Ordnung? · if · Station 5: Aufbereiten und speichernEintrag in Ordnung?WEICHE5Seite: Nicht gespeichert · form · Station 5: Aufbereiten und speichernSeite: NichtgespeichertANTWORT5Tag schon eingetragen? · if · Station 5: Aufbereiten und speichernTag schoneingetragen?WEICHE5Tagesplan ändern · dataTable · Station 5: Aufbereiten und speichernTagesplan ändernDATEN5Tagesplan speichern · dataTable · Station 5: Aufbereiten und speichernTagesplan speichernDATEN5Erster Eintrag? · if · Station 6: Beim ersten Mal: Hotel freischaltenErster Eintrag?WEICHE6Anmeldung bestätigen · dataTable · Station 6: Beim ersten Mal: Hotel freischaltenAnmeldung bestätigenDATEN6Seite: Gespeichert · form · Station 6: Beim ersten Mal: Hotel freischaltenSeite: GespeichertANTWORT6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Code und Tag eingeben

    Die Rezeption gibt ihren Hotel-Code ein und wählt den Tag: heute oder bis zu 60 Tage im Voraus.

    In n8n: Tagesplan-Formular

  2. Hotel am Code erkennen

    Der Code wird genauso in einen Fingerabdruck umgerechnet wie bei der Anmeldung und mit der Hotelliste verglichen. Stimmt er nicht, erscheint ein Hinweis mit dem Weg zur Neuanmeldung.

    In n8n: Prüfsumme bilden · Betrieb suchen · Hotel-Code gültig? · Seite: Code falsch

  3. Zweite Seite vorausfüllen

    Ein kleines Programmstück bereitet die zweite Formularseite vor. Ist der Tag schon eingetragen, stehen alle Angaben zum Ändern da. Bei einem neuen Tag wird vom letzten Eintrag übernommen, nur die Menüs sind leer.

    In n8n: Pläne holen · Formular vorbereiten · Tag in Ordnung? · Seite: Hinweis

  4. Menüs und Programm eintragen

    Die Rezeption trägt Abendmenüs, das Angebot des Hauses, das Programm, Öffnungszeiten und „Gut zu wissen“ ein. Gibt es kein Abendessen, bleiben die Menüfelder einfach leer.

    In n8n: Tagesplan ausfüllen

  5. Aufbereiten und speichern

    Der Eintrag wird aufbereitet; ohne Menüs druckt die Morgenpost keinen Menüzettel, und zu lange Texte bekommen einen Hinweis. Ist der Tag schon da, wird er geändert, sonst kommt ein neuer Tag dazu.

    In n8n: Eintrag aufbereiten · Eintrag in Ordnung? · Seite: Nicht gespeichert · Tag schon eingetragen? · Tagesplan ändern · Tagesplan speichern

    WeicheWenn der Tag ist schon eingetragen: die Angaben werden geändert Sonst: ein neuer Tag kommt dazu

  6. Beim ersten Mal: Hotel freischalten

    Beim allerersten Eintrag wird das Hotel aktiv. Jetzt ist klar, dass die Mail-Adresse stimmt, denn der Code kam ja per Mail. Ab dann läuft die tägliche Morgenpost.

    In n8n: Erster Eintrag? · Anmeldung bestätigen · Seite: Gespeichert

Peter: Morgenpost Angebote vorschlagenjeden Montag um 4:30 Uhr früh

Jeden Montag liest die KI die offiziellen Seiten der Regionen, sucht Vorteile für Gäste und schlägt nur belegte Angebote vor.

12janein12janeinJeden Montag früh · scheduleTrigger · Station 1: Montags: Liste der Seiten holenJeden Montag frühSTART1Test starten · manualTrigger · Station 1: Montags: Liste der Seiten holenTest startenSTART1Einstellungen holen · dataTable · Station 1: Montags: Liste der Seiten holenEinstellungen holenDATEN1Quellen holen · dataTable · Station 1: Montags: Liste der Seiten holenQuellen holenDATEN1Je Quelle einzeln · splitInBatches · Station 2: Seite für Seite lesenJe Quelle einzelnLISTE2Seite laden · httpRequest · Station 2: Seite für Seite lesenSeite ladenHTTP2Text aufbereiten · code · Station 2: Seite für Seite lesenText aufbereitenCODE2Genug Text? · if · Station 2: Seite für Seite lesenGenug Text?WEICHE2Angebote finden (KI) · chainLlm · Station 3: Die KI sucht Angebote für GästeAngebote finden (KI)KI3Sprachmodell (Claude) · lmChatAnthropic · Station 3: Die KI sucht Angebote für GästeSprachmodell(Claude)KI3Format: Angebotsliste · outputParserStructured · Station 3: Die KI sucht Angebote für GästeFormat:AngebotslisteKI3Angebote der Region holen · dataTable · Station 4: Streng prüfen, dann speichernAngebote der RegionholenDATEN4Vorschläge prüfen · code · Station 4: Streng prüfen, dann speichernVorschläge prüfenCODE4Neue Angebote? · if · Station 4: Streng prüfen, dann speichernNeue Angebote?WEICHE4Angebote speichern · dataTable · Station 4: Streng prüfen, dann speichernAngebote speichernDATEN4Neue Angebote von heute · dataTable · Station 5: Hotels per Mail einladenNeue Angebote vonheuteDATEN5Betriebe holen · dataTable · Station 5: Hotels per Mail einladenBetriebe holenDATEN5Mails vorbereiten · code · Station 5: Hotels per Mail einladenMails vorbereitenCODE5Hinweis an Hotels (Brevo) · sendInBlue · Station 5: Hotels per Mail einladenHinweis an Hotels(Brevo)MAIL5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Montags: Liste der Seiten holen

    Jeden Montag früh holt der Ablauf die Liste der offiziellen Seiten der Regionen, etwa zu den Gästekarten. Eine neue Seite ist einfach eine neue Zeile in dieser Liste.

    In n8n: Jeden Montag früh · Test starten · Einstellungen holen · Quellen holen

  2. Seite für Seite lesen

    Die Seiten werden nacheinander geladen. Ein kleines Programmstück macht daraus reinen Text mit einer nummerierten Linkliste. Ist eine Seite leer oder nicht erreichbar, geht es mit der nächsten weiter.

    In n8n: Je Quelle einzeln · Seite laden · Text aufbereiten · Genug Text?

  3. Die KI sucht Angebote für Gäste

    Die KI (Claude) liest den Text und sucht bis zu acht Vorteile für Gäste: freie Eintritte, Ermäßigungen, Aktionen. Zu jedem Angebot muss sie eine Textstelle wörtlich von der Seite mitliefern.

    In n8n: Angebote finden (KI) · Sprachmodell (Claude) · Format: Angebotsliste

  4. Streng prüfen, dann speichern

    Übernommen wird nur, was wörtlich auf der Seite steht, eine belegte Gültigkeit hat, noch gilt und nicht schon in der Liste ist. Übernachtungspakete fallen weg.

    In n8n: Angebote der Region holen · Vorschläge prüfen · Neue Angebote? · Angebote speichern

    WeicheWenn es neue, belegte Angebote gibt: sie kommen in die Angebotsliste Sonst: es geht mit der nächsten Seite weiter

  5. Hotels per Mail einladen

    Zum Schluss bekommt jedes teilnehmende Hotel, in dessen Region es neue Vorschläge gibt, eine Mail mit Link zum Auswahl-Formular. Ohne neue Vorschläge geht keine Mail hinaus.

    In n8n: Neue Angebote von heute · Betriebe holen · Mails vorbereiten · Hinweis an Hotels (Brevo)

Peter: Morgenpost Angebote freigebenwenn ein Hotel das Angebote-Formular abschickt (den Link bekommt es per Mail)

Das Hotel kreuzt an, welche vorgeschlagenen Angebote seiner Region auf der Morgenpost erscheinen sollen.

janeinjaneinAngebote-Formular · formTrigger · Station 1: Hotel meldet sich mit CodeAngebote-FormularSTART1Prüfsumme bilden · crypto · Station 1: Hotel meldet sich mit CodePrüfsumme bildenFELD1Betrieb suchen · dataTable · Station 1: Hotel meldet sich mit CodeBetrieb suchenDATEN1Hotel-Code gültig? · if · Station 1: Hotel meldet sich mit CodeHotel-Code gültig?WEICHE1Seite: Code falsch · form · Station 1: Hotel meldet sich mit CodeSeite: Code falschANTWORT1Angebote holen · dataTable · Station 2: Angebote der Region zusammenstellenAngebote holenDATEN2Freigaben holen · dataTable · Station 2: Angebote der Region zusammenstellenFreigaben holenDATEN2Auswahl vorbereiten · code · Station 2: Angebote der Region zusammenstellenAuswahl vorbereitenCODE2Angebote da? · if · Station 2: Angebote der Region zusammenstellenAngebote da?WEICHE2Seite: Hinweis · form · Station 2: Angebote der Region zusammenstellenSeite: HinweisANTWORT2Angebote auswählen · form · Station 3: Angebote ankreuzenAngebote auswählenANTWORT3Freigaben aufbereiten · code · Station 4: Auswahl speichernFreigaben aufbereitenCODE4Freigaben speichern · dataTable · Station 4: Auswahl speichernFreigaben speichernDATEN4Seite: Gespeichert · form · Station 4: Auswahl speichernSeite: GespeichertANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Hotel meldet sich mit Code

    Das Hotel öffnet das Formular und gibt seinen Hotel-Code ein. Stimmt der Code nicht, erscheint ein Hinweis.

    In n8n: Angebote-Formular · Prüfsumme bilden · Betrieb suchen · Hotel-Code gültig? · Seite: Code falsch

  2. Angebote der Region zusammenstellen

    Ein kleines Programmstück sucht alle noch gültigen Angebote aus der Region des Hotels. Es merkt sich auch, was das Hotel schon früher ausgewählt hat.

    In n8n: Angebote holen · Freigaben holen · Auswahl vorbereiten · Angebote da? · Seite: Hinweis

    WeicheWenn es gültige Angebote für die Region gibt: die Auswahlliste erscheint Sonst: ein kurzer Hinweis erscheint

  3. Angebote ankreuzen

    Jedes Angebot steht mit Beschreibung, Gültigkeit und Link zur Quelle da. Das Hotel hakt an, was seine Gäste sehen sollen.

    In n8n: Angebote auswählen

  4. Auswahl speichern

    Für jedes Angebot wird „ja“ oder „nein“ gespeichert, die neue Auswahl ersetzt die alte. Ab der nächsten Morgenpost stehen die gewählten Angebote auf dem Blatt.

    In n8n: Freigaben aufbereiten · Freigaben speichern · Seite: Gespeichert

Peter: Morgenpostjede volle Stunde; jedes Hotel kommt zu seiner gewählten Uhrzeit dran, frühmorgens oder am Vorabend

Baut für jedes Hotel die tägliche A4-Morgenpost samt Menüzetteln und schickt der Rezeption den Druck-Link.

21212janein1212janeinjaneinjaneinTest starten · manualTrigger · Station 1: Jede Stunde: Wer ist dran?Test startenSTART1Jede Stunde prüfen · scheduleTrigger · Station 1: Jede Stunde: Wer ist dran?Jede Stunde prüfenSTART1Einstellungen holen · dataTable · Station 1: Jede Stunde: Wer ist dran?Einstellungen holenDATEN1Aktive Betriebe holen · dataTable · Station 1: Jede Stunde: Wer ist dran?Aktive Betriebe holenDATEN1Betriebe, die jetzt dran sind · filter · Station 1: Jede Stunde: Wer ist dran?Betriebe, die jetztdran sindWEICHE1Je Hotel einzeln · splitInBatches · Station 2: Hotel für Hotel, nichts doppeltJe Hotel einzelnLISTE2Hotel und Datum · set · Station 2: Hotel für Hotel, nichts doppeltHotel und DatumFELD2Wetter holen (GeoSphere) · httpRequest · Station 3: Wetter, Tagesplan, Termine und Angebote holenWetter holen(GeoSphere)HTTP3Tagesplan holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenTagesplan holenDATEN3Events holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenEvents holenDATEN3Angebote holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenAngebote holenDATEN3Freigaben holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenFreigaben holenDATEN3Ausflugsziele holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenAusflugsziele holenDATEN3Wissen holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenWissen holenDATEN3Morgenpost-Daten vorbereiten · code · Station 4: Alles fürs Blatt aufbereitenMorgenpost-DatenvorbereitenCODE4Tagesplan vorhanden? · if · Station 4: Alles fürs Blatt aufbereitenTagesplan vorhanden?WEICHE4Hinweis: Tagesplan fehlt (Brevo) · sendInBlue · Station 7: Erinnerung, wenn der Tagesplan fehltHinweis: Tagesplanfehlt (Brevo)MAIL7Begrüßung und Tagestipp (KI) · chainLlm · Station 5: Die KI schreibt die BegrüßungBegrüßung undTagestipp (KI)KI5Sprachmodell (Claude) · lmChatAnthropic · Station 5: Die KI schreibt die BegrüßungSprachmodell(Claude)KI5Format: Begrüßung und Tipp · outputParserStructured · Station 5: Die KI schreibt die BegrüßungFormat: Begrüßungund TippKI5Druckseite bauen · code · Station 6: Druckseite bauen und Link verschickenDruckseite bauenCODE6Zugangscode erzeugen · crypto · Station 6: Druckseite bauen und Link verschickenZugangscode erzeugenFELD6Im Archiv ablegen · dataTable · Station 6: Druckseite bauen und Link verschickenIm Archiv ablegenDATEN6Druck-Link an Rezeption (Brevo) · sendInBlue · Station 6: Druckseite bauen und Link verschickenDruck-Link anRezeption (Brevo)MAIL6Bilder holen · dataTable · Station 3: Wetter, Tagesplan, Termine und Angebote holenBilder holenDATEN3Heute schon verschickt? · dataTable · Station 2: Hotel für Hotel, nichts doppeltHeute schonverschickt?DATEN2Noch offen? · if · Station 2: Hotel für Hotel, nichts doppeltNoch offen?WEICHE2Erste Stunde? · if · Station 7: Erinnerung, wenn der Tagesplan fehltErste Stunde?WEICHE7Fehler festhalten · set · Station 8: Plan B: später noch einmalFehler festhaltenFELD8Letzter Versuch? · if · Station 8: Plan B: später noch einmalLetzter Versuch?WEICHE8Hinweis: Morgenpost fehlgeschlagen (Brevo) · sendInBlue · Station 8: Plan B: später noch einmalHinweis: Morgenpostfehlgeschlagen (Brev…MAIL8
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Jede Stunde: Wer ist dran?

    Jede volle Stunde schaut der Ablauf in die Hotelliste. Weiter geht es nur mit Hotels, deren gewählte Uhrzeit jetzt ist oder bis zu drei Stunden zurückliegt und die gerade keine Pause eingetragen haben. Zum Ausprobieren gibt es einen Test-Knopf; ein Testblatt trägt gut sichtbar den Vermerk „Testlauf“.

    In n8n: Jede Stunde prüfen · Test starten · Einstellungen holen · Aktive Betriebe holen · Betriebe, die jetzt dran sind

  2. Hotel für Hotel, nichts doppelt

    Die Hotels werden nacheinander bearbeitet. Für jedes wird der Tag festgelegt: heute oder, beim Versand am Vorabend, morgen. Liegt die Morgenpost für diesen Tag schon im Archiv, wird das Hotel übersprungen.

    In n8n: Je Hotel einzeln · Hotel und Datum · Heute schon verschickt? · Noch offen?

  3. Wetter, Tagesplan, Termine und Angebote holen

    Die Wettervorhersage kommt vom österreichischen Wetterdienst GeoSphere, genau für die Lage des Hotels. Dazu kommen der Tagesplan des Hotels, Termine der Region, die ausgewählten Angebote, Ausflugsziele, das Wissen des Tages und passende Bilder.

    In n8n: Wetter holen (GeoSphere) · Tagesplan holen · Events holen · Angebote holen · Freigaben holen · Ausflugsziele holen · Wissen holen · Bilder holen

  4. Alles fürs Blatt aufbereiten

    Ein kleines Programmstück rechnet aus der Stundenvorhersage die Tageswerte, Sonnenauf- und -untergang und Feiertage aus. Es wählt höchstens vier Termine, nur gültige Angebote und Ausflugsziele in der Nähe des Hotels. Dann wird geprüft, ob der Tagesplan da ist.

    In n8n: Morgenpost-Daten vorbereiten · Tagesplan vorhanden?

    WeicheWenn der Tagesplan des Hotels ist eingetragen: die KI schreibt die Begrüßung und die Morgenpost entsteht Sonst: die Rezeption bekommt eine Erinnerung mit ihrem persönlichen Link zum Tagesplan

  5. Die KI schreibt die Begrüßung

    Die KI (Claude) schreibt ein bis zwei Sätze Begrüßung und wählt den Ausflugstipp aus der vorbereiteten Liste. Alle Zahlen kommen aus den Daten, nicht von der KI. Antwortet die KI einmal nicht, gibt es eine Standard-Begrüßung.

    In n8n: Begrüßung und Tagestipp (KI) · Sprachmodell (Claude) · Format: Begrüßung und Tipp

  6. Druckseite bauen und Link verschicken

    Daraus entsteht die A4-Morgenpost im Design der Kärnten Werbung, mit Menüzetteln, wenn das Haus Abendessen anbietet. Ein zufälliger Zugangscode schützt die Seite. Sie kommt ins Archiv, und die Rezeption bekommt den Druck-Link per Mail, dazu ihren persönlichen Link zum Tagesplan und einen Link zum Pausieren oder Abbestellen.

    In n8n: Druckseite bauen · Zugangscode erzeugen · Im Archiv ablegen · Druck-Link an Rezeption (Brevo)

  7. Erinnerung, wenn der Tagesplan fehlt

    Fehlt der Tagesplan, entsteht kein halb leeres Blatt. Die Rezeption bekommt einmal eine Mail mit ihrem persönlichen Link zur Tagesplan-Seite. Trägt sie ihn nach, kommt die Morgenpost in den nächsten Stunden doch noch. Wer gerade pausiert, bekommt auch keine Erinnerung.

    In n8n: Erste Stunde? · Hinweis: Tagesplan fehlt (Brevo)

  8. Plan B: später noch einmal

    Klemmt etwas bei einem Hotel, zum Beispiel der Wetterdienst, laufen die anderen Hotels ruhig weiter. Der Ablauf versucht es bis zu drei Stunden lang jede Stunde neu. Erst beim letzten Versuch bekommt die Rezeption Bescheid.

    In n8n: Fehler festhalten · Letzter Versuch? · Hinweis: Morgenpost fehlgeschlagen (Brevo)

Peter: Morgenpost Druck-Linkwenn die Rezeption den Link aus der Mail öffnet

Zeigt die fertige Morgenpost zum Drucken an, wenn jemand den geschützten Link aus der Mail öffnet.

janeinjaneinDruck-Link aufgerufen · webhook · Station 1: Rezeption öffnet den LinkDruck-Link aufgerufenSTART1Zugangscode gültig? · if · Station 2: Zugangscode prüfenZugangscode gültig?WEICHE2Morgenpost im Archiv suchen · dataTable · Station 3: Morgenpost im Archiv suchenMorgenpost im ArchivsuchenDATEN3Gefunden? · if · Station 3: Morgenpost im Archiv suchenGefunden?WEICHE3Morgenpost anzeigen · respondToWebhook · Station 4: Seite zum Drucken zeigenMorgenpost anzeigenANTWORT4Nicht gefunden · respondToWebhook · Station 4: Seite zum Drucken zeigenNicht gefundenANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Rezeption öffnet den Link

    Die Rezeption klickt in ihrer Mail auf den Link zur Morgenpost.

    In n8n: Druck-Link aufgerufen

  2. Zugangscode prüfen

    Zuerst wird geprüft, ob der Link einen richtig geformten Zugangscode enthält. Ohne ihn gibt es nur „nicht gefunden“.

    In n8n: Zugangscode gültig?

  3. Morgenpost im Archiv suchen

    Mit dem Code wird die passende Morgenpost im Archiv gesucht. Ein Link gilt nur wenige Tage.

    In n8n: Morgenpost im Archiv suchen · Gefunden?

    WeicheWenn eine gültige Morgenpost gefunden wird: sie erscheint zum Drucken Sonst: es kommt eine neutrale Seite „nicht gefunden“

  4. Seite zum Drucken zeigen

    Die fertige A4-Seite erscheint im Browser und kann gedruckt werden. Suchmaschinen erfassen sie nicht. Passt nichts, erscheint eine neutrale Seite „nicht gefunden“.

    In n8n: Morgenpost anzeigen · Nicht gefunden

Peter: Morgenpost Bilderwenn die Druckseite, ein Formular oder die Tagesplan-Seite ein Bild anzeigt

Liefert Kopfbilder, Fotos zu den Ausflugszielen und das Kärnten-Logo für die Druckseite, die Formulare und die Tagesplan-Seite.

janeinjaneinBild angefragt · webhook · Station 1: Ein Bild wird angefragtBild angefragtSTART1Name gültig? · if · Station 2: Bildnamen prüfenName gültig?WEICHE2Bild in Tabelle suchen · dataTable · Station 3: Bild in der Tabelle suchenBild in TabellesuchenDATEN3Gefunden? · if · Station 3: Bild in der Tabelle suchenGefunden?WEICHE3In Bilddatei umwandeln · convertToFile · Station 4: Bild ausliefernIn BilddateiumwandelnFELD4Bild ausliefern · respondToWebhook · Station 4: Bild ausliefernBild ausliefernANTWORT4Nicht gefunden · respondToWebhook · Station 4: Bild ausliefernNicht gefundenANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Ein Bild wird angefragt

    Zeigt eine Seite ein Bild, fragt sie hier mit dem Namen des Bildes nach.

    In n8n: Bild angefragt

  2. Bildnamen prüfen

    Nur Bildnamen in der erwarteten Form werden angenommen.

    In n8n: Name gültig?

  3. Bild in der Tabelle suchen

    Die Bilder stammen aus der Mediendatenbank der Kärnten Werbung und liegen druckgerecht verkleinert in einer Tabelle, jeweils mit Fotonachweis.

    In n8n: Bild in Tabelle suchen · Gefunden?

  4. Bild ausliefern

    Das Bild wird wieder zu einer Bilddatei und an die Seite geschickt. Fehlt es, kommt „nicht gefunden“ zurück.

    In n8n: In Bilddatei umwandeln · Bild ausliefern · Nicht gefunden

Vorhaben 2Wöchentliche Presseschau zum Kärntner Tourismus

In der Kärnten Werbung will man wissen, was die Presse über Kärnten als Urlaubsland, den Tourismus und die eigenen Kampagnen schreibt. Peter baut dafür eine Presseschau: Jeden Morgen sucht sie in der öffentlichen Nachrichtensuche von Google News nach neuen Artikeln, und die KI ordnet jeden Artikel nach Thema und Stimmung ein. Jeden Montag kommt eine fertige Mail mit Zahlen, der Artikelliste und einer kurzen Einordnung.

So sieht das Ergebnis aus
Der Presseschau-Wochenbericht
am letzten Tag dazugekommenDer Presseschau-WochenberichtAm Vormittag des 24.09. entstanden: Artikel über Kärnten aus der öffentlichen Google-News-Suche, nach Thema und Tonalität gezählt, dazu eine Einordnung als KI-Entwurf zum Prüfen. Zahlen und Liste kommen aus n8n, nur die Einordnung ist KI-Text.
So spielen die Teile zusammen

Zwei Workflows teilen sich eine Liste: Der eine sammelt jeden Morgen neue Artikel und legt sie eingeordnet ab, der andere liest die Liste einmal pro Woche und macht daraus die Mail.

  • Peter: Presseschau sammelnsammelt täglich neue Artikel
  • Peter: Presseschau Wochenberichtschickt montags die Presseschau
  • Peter: Presseschau sammelnPeter: Presseschau Wochenberichteingeordnete Artikel in Liste
Peter: Presseschau sammelnjeden Morgen um 7 Uhr

Sucht jeden Morgen neue Presseartikel zu drei Suchbegriffen, lässt sie von der KI einordnen und legt sie in einer Liste ab.

Täglich um 7 · scheduleTrigger · Station 1: Jeden Morgen: Suchbegriffe bereitlegenTäglich um 7START1Test starten · manualTrigger · Station 1: Jeden Morgen: Suchbegriffe bereitlegenTest startenSTART1Suchbegriffe · set · Station 1: Jeden Morgen: Suchbegriffe bereitlegenSuchbegriffeFELD1Begriffe einzeln · splitOut · Station 1: Jeden Morgen: Suchbegriffe bereitlegenBegriffe einzelnLISTE1Feed-Adresse bauen · set · Station 2: In den Nachrichten suchenFeed-Adresse bauenFELD2Artikel abrufen · rssFeedRead · Station 2: In den Nachrichten suchenArtikel abrufenKNOTEN2Artikel aufbereiten · set · Station 3: Aufräumen und nichts doppeltArtikel aufbereitenFELD3Nur letzte 30 Tage · filter · Station 3: Aufräumen und nichts doppeltNur letzte 30 TageWEICHE3Doppelte im Lauf entfernen · removeDuplicates · Station 3: Aufräumen und nichts doppeltDoppelte im LaufentfernenLISTE3Schon bekannt? · removeDuplicates · Station 3: Aufräumen und nichts doppeltSchon bekannt?LISTE3Einordnen (KI) · chainLlm · Station 4: Die KI ordnet einEinordnen (KI)KI4Sprachmodell (Claude) · lmChatAnthropic · Station 4: Die KI ordnet einSprachmodell(Claude)KI4Format: Einordnung · outputParserStructured · Station 4: Die KI ordnet einFormat: EinordnungKI4Zeile vorbereiten · set · Station 5: In der Liste ablegenZeile vorbereitenFELD5In Tabelle ablegen · dataTable · Station 5: In der Liste ablegenIn Tabelle ablegenDATEN5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Jeden Morgen: Suchbegriffe bereitlegen

    Jeden Morgen um 7 Uhr startet der Ablauf, zum Ausprobieren gibt es einen Test-Knopf. Drei Suchbegriffe stehen in einer Liste: „Kärnten Werbung“, „Kärntner Originale“ und „Kärntner Tourismus“. Ein neuer Begriff ist einfach ein weiterer Eintrag.

    In n8n: Täglich um 7 · Test starten · Suchbegriffe · Begriffe einzeln

  2. In den Nachrichten suchen

    Für jeden Begriff wird eine Suche in Google News gebaut, der öffentlichen Nachrichtensuche. Sie liefert die gefundenen Artikel mit Titel, Zeitung und Datum, ganz ohne Zugangsdaten.

    In n8n: Feed-Adresse bauen · Artikel abrufen

  3. Aufräumen und nichts doppelt

    Titel, Zeitung, Link und Datum werden sauber getrennt. Was älter als 30 Tage ist, fällt weg. Doppeltes kommt nicht weiter: Artikel, die mehrere Suchbegriffe gefunden haben, und Artikel, die schon an einem früheren Tag dabei waren.

    In n8n: Artikel aufbereiten · Nur letzte 30 Tage · Doppelte im Lauf entfernen · Schon bekannt?

  4. Die KI ordnet ein

    Die KI (Claude) liest nur den Titel. Sie ordnet jeden Artikel einem Thema zu, etwa Kampagne oder Statistik, bewertet die Stimmung und sagt, ob es wirklich um Kärnten als Urlaubsland geht. Dazu schreibt sie einen Satz, worum es geht.

    In n8n: Einordnen (KI) · Sprachmodell (Claude) · Format: Einordnung

  5. In der Liste ablegen

    Jeder Artikel kommt mit Einordnung und dem Tag, an dem er gefunden wurde, als Zeile in die Presseschau-Liste. Auch nicht passende Artikel werden aufgehoben, der Wochenbericht nimmt später nur die passenden.

    In n8n: Zeile vorbereiten · In Tabelle ablegen

Peter: Presseschau Wochenberichtjeden Montag um 8 Uhr

Schickt jeden Montag die Presseschau der letzten sieben Tage als fertige Mail: Zahlen, Artikelliste und eine kurze Einordnung der KI.

janeinMontags um 8 · scheduleTrigger · Station 1: Montags: Einstellungen und ZeitraumMontags um 8START1Test starten · manualTrigger · Station 1: Montags: Einstellungen und ZeitraumTest startenSTART1Einstellungen holen · dataTable · Station 1: Montags: Einstellungen und ZeitraumEinstellungen holenDATEN1Zeitraum festlegen · set · Station 1: Montags: Einstellungen und ZeitraumZeitraum festlegenFELD1Artikel der Woche holen · dataTable · Station 2: Passende Artikel der Woche holenArtikel der WocheholenDATEN2Treffer vorhanden? · if · Station 2: Passende Artikel der Woche holenTreffer vorhanden?WEICHE2Kennzahlen berechnen · code · Station 3: Zählen macht n8nKennzahlen berechnenCODE3Einordnung (KI) · chainLlm · Station 4: Die KI schreibt die EinordnungEinordnung (KI)KI4Sprachmodell (Claude) · lmChatAnthropic · Station 4: Die KI schreibt die EinordnungSprachmodell(Claude)KI4Mail bauen · set · Station 5: Mail bauen und verschickenMail bauenFELD5Leermeldung bauen · set · Station 5: Mail bauen und verschickenLeermeldung bauenFELD5Presseschau senden (Brevo) · sendInBlue · Station 5: Mail bauen und verschickenPresseschau senden(Brevo)MAIL5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Montags: Einstellungen und Zeitraum

    Jeden Montag um 8 Uhr startet der Ablauf, dazu gibt es einen Test-Knopf. Absender und Empfänger stehen in der Einstellungsliste, nicht im Ablauf. Der Zeitraum sind immer die letzten sieben Tage.

    In n8n: Montags um 8 · Test starten · Einstellungen holen · Zeitraum festlegen

  2. Passende Artikel der Woche holen

    Aus der Presseschau-Liste kommen nur Artikel, die in diesen Tagen gefunden und von der KI als passend eingeordnet wurden.

    In n8n: Artikel der Woche holen · Treffer vorhanden?

    WeicheWenn es passende Artikel gibt: n8n zählt, die KI ordnet ein und die Presseschau-Mail geht hinaus Sonst: eine kurze Mail „keine neuen Treffer“ geht hinaus

  3. Zählen macht n8n

    Ein kleines Programmstück zählt die Artikel nach Thema und Stimmung und baut die Liste für die Mail. Alle Zahlen entstehen hier, nicht in der KI.

    In n8n: Kennzahlen berechnen

  4. Die KI schreibt die Einordnung

    Die KI (Claude) bekommt die fertigen Zahlen und die Artikelliste und schreibt zwei bis vier Sätze dazu. In der Mail steht diese Einordnung ausdrücklich als Entwurf zum Prüfen.

    In n8n: Einordnung (KI) · Sprachmodell (Claude)

  5. Mail bauen und verschicken

    Daraus entsteht eine Mail in den Farben der Kärnten Werbung mit Zahlen, Einordnung und allen Artikeln samt Link. Gab es keine passenden Artikel, kommt eine kurze Mail „keine neuen Treffer“, damit man sieht, dass die Presseschau läuft.

    In n8n: Mail bauen · Leermeldung bauen · Presseschau senden (Brevo)

Das klappt schon
  • Am 24.09. um 6 Uhr früh hat die Morgenpost ganz von selbst die Blätter für zwei Testhotels gebaut, und eines davon wurde am Vormittag auf dem Handy geöffnet.
  • Die Presseschau hat im Test sieben Artikel über den Kärntner Tourismus aus den letzten 30 Tagen gefunden, jeden nach Thema und Stimmung eingeordnet und die Wochenmail zweimal verschickt. Ein zweiter Durchlauf hat erkannt, dass alle sieben schon gesammelt waren, und nichts doppelt aufgenommen.
  • Am 23.09. lief die ganze Kette mit dem persönlichen Link durch: anmelden, Tagesplan und Angebote auf der eigenen Seite eintragen, die Morgenpost bauen lassen und im Browser öffnen.
  • Der stündliche Ablauf ist bisher 68-mal von selbst gestartet und jedes Mal ohne Absturz durchgelaufen.
Nächster Schritt
  • Nach dem Bootcamp die Presseschau ein paar Wochen mitlesen: Findet sie die richtigen Artikel? Ein neuer Suchbegriff ist nur ein weiterer Eintrag in der Liste.
  • Die Morgenpost mit ein, zwei echten Partnerhotels ausprobieren und vorher mit dem Trainer klären, wo sie dauerhaft laufen soll und wer die Mails im Blick behält. Im README festhalten, welche Einträge in den Listen nur Beispiele sind.

Gut zu wissen:Zählen lassen, nicht schätzen lassen: In Peters Presseschau zählt n8n die Artikel nach Thema und Stimmung, die KI bekommt die fertigen Zahlen und schreibt nur ein paar Sätze Einordnung dazu, in der Mail als Entwurf markiert. So stimmen die Zahlen immer, und die KI macht, was sie gut kann.

Bettina Schmidt (Betty) · TVB Eugendorf

Kampagnenzahlen auf einen Blick

am letzten Tag dazugekommenAm 24.09. hat Betty die ersten Endzahlen ihrer Werbepartner eingetragen, und die App zeigt jetzt auch die Reichweite und unter jedem Partner einen Link zum Eintragen. Der Kampagnen-Monitor erkennt Partner jetzt auch dann, wenn ihr Name nur im Quelle-Teil des Links steht, zum Beispiel Komoot. Und für die Agentur ist ein eigener Zugang eingerichtet, der nur den Trackinglink-Generator öffnet.

Vorhaben 1Kampagnenzahlen auf einen Blick

Die Zahlen zu den Werbekampagnen des Tourismusverbands liegen in der Webanalyse Matomo, und dort herauszulesen, welcher Werbepartner wie viele Besuche gebracht hat, ist mühsam. Betty wählt in ihrer App Kampagne und Zeitraum, und n8n holt die Zahlen, räumt die Partner-Namen auf und rechnet die Kennzahlen. Die App zeigt alles mit Kacheln, Tabellen und Verlaufsdiagramm, auf Wunsch mit einer Einordnung der KI in Worten. Die Endzahlen der Partner, etwa Klicks und Reichweite, trägt Betty dazu ein, und beim Anlegen einer Kampagne hakt sie die Namen aus Matomo einfach an, statt Suchbegriffe abzutippen.

So sieht das Ergebnis aus
Der Kampagnen-Monitor mit echten Zahlen
Der Kampagnen-Monitor mit echten ZahlenGenuss 2026 über den ganzen Zeitraum: Besuche, Absprungrate, Verweildauer, der Verlauf pro Tag und die Partner einzeln. Die Spalten Interesse, Absicht und Kontakt sind Bettys eigene Stufen — unten auf der Seite steht, wie sie zu lesen sind. Aufgenommen am 22.09. um 23:20 nach einem Klick auf „Zahlen laden“.
So spielen die Teile zusammen

Bettys App ist die Oberfläche mit den Seiten „Übersicht“, „Kampagnen“ und „Partner-Endzahlen“; unter jedem Partner führt ein Link direkt zum Eintragen seiner Endzahlen. Hinter jedem Klick arbeitet einer der fünf Workflows, und die eingetragenen Partner-Endzahlen landen in einer Tabelle, die der Kampagnen-Monitor beim Rechnen mitliest.

  • AppOberfläche: Übersicht, Kampagnen, Endzahlen
  • Betty: Kampagnen-Datenmerkt sich Kampagnen und Endzahlen
  • Betty: Matomo-Kampagnenliefert Kampagnennamen zum Anhaken
  • Betty: Kampagnen-Monitorholt Zahlen, rechnet Kennzahlen
  • Betty: Einstiegsseitenzeigt, wo Besuche ankommen
  • Betty: Kampagnen-EinordnungKI beschreibt die Kampagne
  • AppBetty: Matomo-Kampagnenfragt Kampagnennamen ab
  • Betty: Matomo-KampagnenBetty: Kampagnen-Datenangehakte Namen über die App
  • AppBetty: Kampagnen-DatenKampagnen und Endzahlen speichern
  • AppBetty: Kampagnen-Monitorfragt Kampagnenzahlen ab
  • AppBetty: Einstiegsseitenfragt Halbmonat für Halbmonat
  • AppBetty: Kampagnen-Einordnungschickt fertige Auswertung
  • Betty: Kampagnen-DatenBetty: Kampagnen-MonitorEndzahlen über gemeinsame Tabelle
Betty: Kampagnen-Monitorwenn Betty in der Übersicht auf „Zahlen laden“ klickt (zum Ausprobieren auch per Testknopf in n8n)

Das Herzstück: holt die Kampagnenzahlen aus Matomo, ordnet sie den Werbepartnern zu und rechnet alle Kennzahlen.

janeinAnfrage von der App · webhook · Station 1: Anfrage annehmenAnfrage von der AppSTART1Test starten · manualTrigger · Station 1: Anfrage annehmenTest startenSTART1Eingaben · set · Station 1: Anfrage annehmenEingabenFELD1Matomo: Verlauf holen · httpRequest · Station 3: Zahlen aus Matomo holenMatomo: Verlauf holenHTTP3Verlauf je Tag · code · Station 3: Zahlen aus Matomo holenVerlauf je TagCODE3Matomo: Kampagnen holen · httpRequest · Station 3: Zahlen aus Matomo holenMatomo: KampagnenholenHTTP3Partner bereinigen · code · Station 4: Partner aufräumenPartner bereinigenCODE4Treffer gefunden? · if · Station 4: Partner aufräumenTreffer gefunden?WEICHE4Antwort: Hinweis · respondToWebhook · Station 4: Partner aufräumenAntwort: HinweisANTWORT4Summen je Partner · summarize · Station 5: Kennzahlen je Partner rechnenSummen je PartnerKNOTEN5Kennzahlen je Partner · set · Station 5: Kennzahlen je Partner rechnenKennzahlen je PartnerFELD5Nach Besuchen sortieren · sort · Station 7: Gesamtwerte bilden und zurückschickenNach BesuchensortierenLISTE7Partnerliste · aggregate · Station 7: Gesamtwerte bilden und zurückschickenPartnerlisteLISTE7Gesamtsummen · set · Station 7: Gesamtwerte bilden und zurückschickenGesamtsummenFELD7Gesamt-Kennzahlen · set · Station 7: Gesamtwerte bilden und zurückschickenGesamt-KennzahlenFELD7Antwort bauen · set · Station 7: Gesamtwerte bilden und zurückschickenAntwort bauenFELD7Antwort an die App · respondToWebhook · Station 7: Gesamtwerte bilden und zurückschickenAntwort an die AppANTWORT7Endzahlen laden · dataTable · Station 6: Endzahlen und Kosten dazunehmenEndzahlen ladenDATEN6Endzahlen zuordnen · merge · Station 6: Endzahlen und Kosten dazunehmenEndzahlen zuordnenLISTE6Kosten je Partner · set · Station 6: Endzahlen und Kosten dazunehmenKosten je PartnerFELD6Matomo: Quelle & Medium holen · httpRequest · Station 3: Zahlen aus Matomo holenMatomo: Quelle &Medium holenHTTP3Quelle & Medium auswerten · code · Station 3: Zahlen aus Matomo holenQuelle & MediumauswertenCODE3Matomo: Quellen durchsuchen · httpRequest · Station 2: Versteckte Meta-Anzeigen findenMatomo: QuellendurchsuchenHTTP2Suchmuster erweitern · code · Station 2: Versteckte Meta-Anzeigen findenSuchmuster erweiternCODE2
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Anfrage annehmen

    Die App schickt Kampagne, Suchbegriffe und Zeitraum. Daraus wird ein einheitliches Suchmuster, Groß- und Kleinschreibung spielen keine Rolle.

    In n8n: Anfrage von der App · Test starten · Eingaben

  2. Versteckte Meta-Anzeigen finden

    Manche Meta-Anzeigen tragen statt eines Namens nur eine Nummer. n8n findet sie über den Quelle-Teil des Trackinglinks und nimmt sie in die Suche auf, damit keine Besuche fehlen.

    In n8n: Matomo: Quellen durchsuchen · Suchmuster erweitern

  3. Zahlen aus Matomo holen

    Drei Abfragen an die Webanalyse: Besuche pro Tag, Zahlen je Kampagnen-Eintrag und Zahlen je Werbemittel wie Anzeige, Video oder Reel. Aus Matomo kommen nur Summen, keine einzelnen Besuche.

    In n8n: Matomo: Verlauf holen · Verlauf je Tag · Matomo: Kampagnen holen · Matomo: Quelle & Medium holen · Quelle & Medium auswerten

  4. Partner aufräumen

    Ein kleines Programmstück ordnet jeden Eintrag einem Werbepartner zu und fasst die Ziele in drei Stufen zusammen: Interesse, Absicht, Kontakt. Steht der Partner nicht im Link selbst, schaut n8n im Quelle-Teil nach, so wird zum Beispiel Komoot richtig erkannt. Abweichende Schreibweisen gleicht eine Korrekturliste aus.

    In n8n: Partner bereinigen · Treffer gefunden? · Antwort: Hinweis

    WeicheWenn Matomo Kampagnen-Besuche gefunden hat: werden die Kennzahlen gerechnet Sonst: bekommt die App einen verständlichen Hinweis statt leerer Zahlen

  5. Kennzahlen je Partner rechnen

    Je Partner werden die Besuche zusammengezählt. Daraus entstehen Absprungrate, Seiten pro Besuch, Verweildauer und die Anteile der drei Ziel-Stufen.

    In n8n: Summen je Partner · Kennzahlen je Partner

  6. Endzahlen und Kosten dazunehmen

    Die eingetragenen Partner-Endzahlen wie Klicks und Reichweite kommen aus der Tabelle dazu. Daraus rechnet n8n, wie viele der gemeldeten Klicks auf der Website ankamen. Kosten pro Besuch gibt es nur mit tatsächlichen Kosten, nie mit dem geplanten Budget.

    In n8n: Endzahlen laden · Endzahlen zuordnen · Kosten je Partner

  7. Gesamtwerte bilden und zurückschicken

    Die Partner werden nach Besuchen sortiert und die Gesamtwerte gerechnet. Alles geht als ein Paket an die App: Kennzahlen, Partnerliste und Verlauf.

    In n8n: Nach Besuchen sortieren · Partnerliste · Gesamtsummen · Gesamt-Kennzahlen · Antwort bauen · Antwort an die App

Betty: Kampagnen-Datenwenn Betty in der App Kampagnen oder Partner-Endzahlen öffnet oder speichert

Das Gedächtnis der App: speichert Kampagnen und Partner-Endzahlen und liefert sie wieder aus.

12345janeinjaneinAnfrage von der App · webhook · Station 1: Wunsch der App erkennenAnfrage von der AppSTART1Welche Aktion? · switch · Station 1: Wunsch der App erkennenWelche Aktion?WEICHE1Kampagnen laden · dataTable · Station 2: Kampagnenliste liefernKampagnen ladenDATEN2Kampagnen sammeln · aggregate · Station 2: Kampagnenliste liefernKampagnen sammelnLISTE2Antwort: Kampagnen · respondToWebhook · Station 2: Kampagnenliste liefernAntwort: KampagnenANTWORT2Kampagne prüfen · set · Station 3: Kampagne prüfen und speichernKampagne prüfenFELD3Kampagne vollständig? · if · Station 3: Kampagne prüfen und speichernKampagne vollständig?WEICHE3Kampagne speichern · dataTable · Station 3: Kampagne prüfen und speichernKampagne speichernDATEN3Antwort: Kampagne gespeichert · respondToWebhook · Station 3: Kampagne prüfen und speichernAntwort: KampagnegespeichertANTWORT3Antwort: Kampagne unvollständig · respondToWebhook · Station 3: Kampagne prüfen und speichernAntwort: KampagneunvollständigANTWORT3Endzahlen laden · dataTable · Station 4: Partner-Endzahlen liefernEndzahlen ladenDATEN4Endzahlen sammeln · aggregate · Station 4: Partner-Endzahlen liefernEndzahlen sammelnLISTE4Antwort: Endzahlen · respondToWebhook · Station 4: Partner-Endzahlen liefernAntwort: EndzahlenANTWORT4Endzahlen prüfen · code · Station 5: Partner-Endzahlen prüfen und speichernEndzahlen prüfenCODE5Endzahlen gültig? · if · Station 5: Partner-Endzahlen prüfen und speichernEndzahlen gültig?WEICHE5Endzahlen speichern · dataTable · Station 5: Partner-Endzahlen prüfen und speichernEndzahlen speichernDATEN5Antwort: Endzahlen gespeichert · respondToWebhook · Station 5: Partner-Endzahlen prüfen und speichernAntwort: EndzahlengespeichertANTWORT5Antwort: Endzahlen ungültig · respondToWebhook · Station 5: Partner-Endzahlen prüfen und speichernAntwort: EndzahlenungültigANTWORT5Antwort: Unbekannte Aktion · respondToWebhook · Station 1: Wunsch der App erkennenAntwort: UnbekannteAktionANTWORT1
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Wunsch der App erkennen

    Die App sagt mit, was sie möchte: Kampagnen zeigen oder speichern, Endzahlen zeigen oder speichern. Eine Weiche schickt die Anfrage in den passenden Zweig, alles andere wird abgelehnt.

    In n8n: Anfrage von der App · Welche Aktion? · Antwort: Unbekannte Aktion

    WeicheWenn die App nach Kampagnen fragt oder eine speichern will: geht es in die Kampagnen-Zweige Sonst: geht es in die Endzahlen-Zweige (unbekannte Wünsche werden abgelehnt)

  2. Kampagnenliste liefern

    Alle gespeicherten Kampagnen werden aus der Tabelle gelesen, nach Name sortiert und an die App geschickt.

    In n8n: Kampagnen laden · Kampagnen sammeln · Antwort: Kampagnen

  3. Kampagne prüfen und speichern

    Name, Suchbegriffe und Laufzeit werden geprüft. Gibt es die Kampagne schon, wird sie aktualisiert statt doppelt angelegt. Fehlt etwas, bekommt die App einen Hinweis.

    In n8n: Kampagne prüfen · Kampagne vollständig? · Kampagne speichern · Antwort: Kampagne gespeichert · Antwort: Kampagne unvollständig

  4. Partner-Endzahlen liefern

    Für eine Kampagne werden die eingetragenen Zahlen der Werbepartner gelesen, etwa Kosten, Klicks und Reichweite.

    In n8n: Endzahlen laden · Endzahlen sammeln · Antwort: Endzahlen

  5. Partner-Endzahlen prüfen und speichern

    Ein kleines Programmstück prüft die Zahlen und versteht das gewohnte Format „1.480,50“. Pro Kampagne und Partner gibt es genau eine Zeile, erneutes Speichern überschreibt sie.

    In n8n: Endzahlen prüfen · Endzahlen gültig? · Endzahlen speichern · Antwort: Endzahlen gespeichert · Antwort: Endzahlen ungültig

Betty: Matomo-Kampagnenwenn Betty beim Anlegen einer Kampagne auf „Aus Matomo holen“ klickt

Holt alle Kampagnennamen, die Matomo kennt, damit Betty sie beim Anlegen einer Kampagne nur noch anhaken muss.

Anfrage von der App · webhook · Station 1: Zeitraum annehmenAnfrage von der AppSTART1Zeitraum prüfen · code · Station 1: Zeitraum annehmenZeitraum prüfenCODE1Matomo: Kampagnennamen holen · httpRequest · Station 2: Kampagnennamen aus Matomo holenMatomo:Kampagnennamen holenHTTP2Matomo: Quellen holen · httpRequest · Station 3: Quellen dazunehmenMatomo: Quellen holenHTTP3Liste bauen · code · Station 4: Liste bauen und zurückschickenListe bauenCODE4Antwort an die App · respondToWebhook · Station 4: Liste bauen und zurückschickenAntwort an die AppANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Zeitraum annehmen

    Die App schickt die Laufzeit der Kampagne. Fehlt sie, nimmt n8n einfach die letzten zwölf Monate bis gestern.

    In n8n: Anfrage von der App · Zeitraum prüfen

  2. Kampagnennamen aus Matomo holen

    Die Webanalyse liefert alle Kampagnennamen aus den Trackinglinks, jeweils mit der Zahl der Besuche.

    In n8n: Matomo: Kampagnennamen holen

  3. Quellen dazunehmen

    Manche Meta-Anzeigen tragen statt eines Namens nur eine Nummer. Der eigentliche Name steht dann meist in der Quelle, deshalb holt n8n die Quellen dazu.

    In n8n: Matomo: Quellen holen

  4. Liste bauen und zurückschicken

    Ein kleines Programmstück sortiert die Namen nach Besuchen. In der App hakt Betty die passenden an, und sie landen genau so geschrieben bei den Suchbegriffen der Kampagne.

    In n8n: Liste bauen · Antwort an die App

Betty: Einstiegsseitenwenn Betty in der Übersicht die Ansicht „Einstiegsseiten“ wählt und auf „Einstiegsseiten berechnen“ klickt

Zeigt, auf welchen Seiten der Website die Kampagnen-Besuche ankommen.

janeinAnfrage von der App · webhook · Station 1: Anfrage annehmenAnfrage von der AppSTART1Eingaben · set · Station 1: Anfrage annehmenEingabenFELD1Eingaben vollständig? · if · Station 2: Eingaben prüfenEingaben vollständig?WEICHE2Antwort: Eingaben fehlen · respondToWebhook · Station 2: Eingaben prüfenAntwort: EingabenfehlenANTWORT2Matomo: Einstiegsseiten holen · httpRequest · Station 3: Einstiegsseiten aus Matomo holenMatomo:Einstiegsseiten holenHTTP3Seiten zusammenfassen · code · Station 4: Seiten zusammenfassen und zurückschickenSeiten zusammenfassenCODE4Antwort an die App · respondToWebhook · Station 4: Seiten zusammenfassen und zurückschickenAntwort an die AppANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Anfrage annehmen

    Die App schickt Suchbegriffe und einen kurzen Zeitraum, meist einen halben Monat. Daraus wird ein Filter für Matomo: nur Besuche aus dieser Kampagne.

    In n8n: Anfrage von der App · Eingaben

  2. Eingaben prüfen

    Fehlen Suchbegriffe oder Zeitraum, bekommt die App sofort einen Hinweis.

    In n8n: Eingaben vollständig? · Antwort: Eingaben fehlen

  3. Einstiegsseiten aus Matomo holen

    Matomo zählt, auf welcher Seite die Kampagnen-Besuche angekommen sind und wie viele gleich wieder gegangen sind. Weil das rechenaufwendig ist, fragt die App Abschnitt für Abschnitt.

    In n8n: Matomo: Einstiegsseiten holen

  4. Seiten zusammenfassen und zurückschicken

    Ein kleines Programmstück fasst gleiche Seiten zusammen, Zusätze hinter „?“ fallen weg. Die App zählt die Abschnitte danach zu einer Liste zusammen.

    In n8n: Seiten zusammenfassen · Antwort an die App

Betty: Kampagnen-Einordnungwenn Betty in der Übersicht die „Einordnung (KI)“ aufklappt, bewusst nur auf Knopfdruck

Die KI (Claude) beschreibt in Worten, wie eine Kampagne läuft, und n8n prüft danach jede Zahl im Text.

janeinAnfrage von der App · webhook · Station 1: Fertige Auswertung annehmenAnfrage von der AppSTART1Fakten aufbereiten · code · Station 2: Fakten aufbereitenFakten aufbereitenCODE2Fakten vorhanden? · if · Station 2: Fakten aufbereitenFakten vorhanden?WEICHE2Antwort: keine Daten · respondToWebhook · Station 2: Fakten aufbereitenAntwort: keine DatenANTWORT2Einordnung schreiben (KI) · chainLlm · Station 3: Die KI schreibt die EinordnungEinordnung schreiben(KI)KI3Claude (Anthropic) · lmChatAnthropic · Station 3: Die KI schreibt die EinordnungClaude (Anthropic)KI3Antwortformat · outputParserStructured · Station 3: Die KI schreibt die EinordnungAntwortformatKI3Zahlen prüfen · code · Station 4: Jede Zahl gegenprüfenZahlen prüfenCODE4Antwort an die App · respondToWebhook · Station 4: Jede Zahl gegenprüfenAntwort an die AppANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Fertige Auswertung annehmen

    Die App schickt die Zahlen, die der Kampagnen-Monitor gerade geliefert hat.

    In n8n: Anfrage von der App

  2. Fakten aufbereiten

    Ein kleines Programmstück rechnet Anteile, den Spitzentag und den Trend der letzten 7 Tage. Partner mit wenigen Besuchen werden als „kleine Basis“ markiert.

    In n8n: Fakten aufbereiten · Fakten vorhanden? · Antwort: keine Daten

    WeicheWenn Zahlen zur Kampagne vorliegen: schreibt die KI die Einordnung Sonst: bekommt die App einen Hinweis, ohne dass die KI bemüht wird

  3. Die KI schreibt die Einordnung

    Die KI (Claude) liest die fertigen Fakten und schreibt Zusammenfassung, Auffälligkeiten, Empfehlungen und offene Fragen. Sie formuliert nur, gerechnet wird vorher.

    In n8n: Einordnung schreiben (KI) · Claude (Anthropic) · Antwortformat

  4. Jede Zahl gegenprüfen

    n8n vergleicht jede Zahl im KI-Text mit den berechneten Fakten. Kommt eine nicht vor, zeigt die App genau diese Zahl als Warnung.

    In n8n: Zahlen prüfen · Antwort an die App

Vorhaben 2Trendbericht für die Vollversammlung

Für die Vollversammlung baut Betty Folien mit den Nächtigungen von Eugendorf, dem Vergleich zur Stadt Salzburg und einem Blick auf Reisetrends. Bisher steckte dahinter eine eigene Excel-Liste. Jetzt lädt sie das Gemeinde-PDF hoch, n8n liest und prüft die Zahlen, und die App zeigt fertige Diagramme zum Kopieren in die PowerPoint. Dazu recherchiert die KI Trends mit Quellen, und jede Zahl darin wird gegen die Quelle geprüft.

So sieht das Ergebnis aus
Die Diagramme für die Vollversammlung
Die Diagramme für die VollversammlungNächtigungen je Monat für die Stadt Salzburg und für Eugendorf, dazu die Herkunftsländer über mehrere Jahre. Jedes Diagramm lässt sich per Knopf in die PowerPoint kopieren. Die Zahlen rechnet n8n aus den gespeicherten Gemeinde- und Stadtzahlen, die KI ist daran nicht beteiligt.
Die KI-Recherche mit Quellenprüfung
Die KI-Recherche mit QuellenprüfungDie KI (Claude) recherchiert Trends und ein Lagebild. Aussagen ohne Quelle und Zahlen, die nicht wörtlich in der Quelle stehen, werden gestrichen; der Prüfbericht zeigt, was übernommen und was gestrichen wurde. Hier zwei gespeicherte Berichte vom 23.09.
So spielen die Teile zusammen

Zwei Workflows füllen eine gemeinsame Nächtigungstabelle, einer rechnet daraus die Folienzahlen, und die KI-Recherche bekommt fürs Lagebild die fertig gerechneten Eugendorf-Zahlen. Alles läuft über die Seite „Trendbericht“ in Bettys App.

  • AppSeite Trendbericht: Diagramme, Recherche
  • Betty: Nächtigungen Importliest Gemeinde-PDFs ein
  • Betty: Stadt Salzburg Nächtigungenholt Vergleichszahlen der Stadt
  • Betty: Trendbericht Zahlenrechnet die Folienzahlen
  • Betty: Trend-RechercheKI recherchiert mit Quellenprüfung
  • AppBetty: Nächtigungen Importschickt das Gemeinde-PDF
  • AppBetty: Stadt Salzburg NächtigungenStadtzahlen aktualisieren
  • Betty: Nächtigungen ImportBetty: Trendbericht ZahlenNächtigungen über gemeinsame Tabelle
  • Betty: Stadt Salzburg NächtigungenBetty: Trendbericht ZahlenStadtzahlen über gemeinsame Tabelle
  • AppBetty: Trendbericht Zahlenfragt Folienzahlen und Excel ab
  • Betty: Trendbericht ZahlenBetty: Trend-RechercheEugendorf-Zahlen über die App
  • AppBetty: Trend-Recherchestartet Recherche, fragt Stand ab
Betty: Nächtigungen Importwenn Betty im Trendbericht ein Gemeinde-PDF hochlädt und auf „PDF prüfen“ klickt

Liest die Länderstatistik der Gemeinde aus dem PDF und speichert die Nächtigungen je Herkunftsland.

janeinjaneinPDF von der App · webhook · Station 1: PDF annehmenPDF von der AppSTART1PDF-Text lesen · extractFromFile · Station 2: Text aus dem PDF lesenPDF-Text lesenFELD2Zahlen auslesen · code · Station 3: Zahlen herauslesen und nachrechnenZahlen auslesenCODE3Sicher gelesen? · if · Station 3: Zahlen herauslesen und nachrechnenSicher gelesen?WEICHE3Antwort: nicht lesbar · respondToWebhook · Station 3: Zahlen herauslesen und nachrechnenAntwort: nicht lesbarANTWORT3Speichern? · if · Station 4: Erst zeigen, dann speichernSpeichern?WEICHE4Antwort: Vorschau · respondToWebhook · Station 4: Erst zeigen, dann speichernAntwort: VorschauANTWORT4Zeilen für die Tabelle · code · Station 5: In die Nächtigungstabelle schreibenZeilen für dieTabelleCODE5In Tabelle speichern · dataTable · Station 5: In die Nächtigungstabelle schreibenIn Tabelle speichernDATEN5Zusammenfassen · code · Station 5: In die Nächtigungstabelle schreibenZusammenfassenCODE5Antwort: gespeichert · respondToWebhook · Station 5: In die Nächtigungstabelle schreibenAntwort: gespeichertANTWORT5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. PDF annehmen

    Betty lädt in der App die Länderstatistik der Gemeinde hoch, für einen Monat oder ein ganzes Jahr.

    In n8n: PDF von der App

  2. Text aus dem PDF lesen

    n8n zieht den Text aus dem PDF, Seite für Seite.

    In n8n: PDF-Text lesen

  3. Zahlen herauslesen und nachrechnen

    Ein kleines Programmstück liest je Land Ankünfte und Nächtigungen. Zwei Kontrollen müssen aufgehen: Die Summe aller Länder ergibt die Gesamtzeile, und die Aufenthaltsdauer passt. Sonst wird nichts gespeichert und die App zeigt einen Hinweis.

    In n8n: Zahlen auslesen · Sicher gelesen? · Antwort: nicht lesbar

    WeicheWenn beide Kontrollrechnungen aufgehen: geht es weiter zur Vorschau oder zum Speichern Sonst: wird nichts gespeichert und die App meldet, dass das PDF nicht sicher lesbar war

  4. Erst zeigen, dann speichern

    Beim ersten Klick zeigt die App nur, was gelesen wurde. Gespeichert wird erst, wenn Betty auf „Stimmt, speichern“ klickt.

    In n8n: Speichern? · Antwort: Vorschau

    WeicheWenn Betty die Zahlen bestätigt hat: werden sie in die Tabelle geschrieben Sonst: zeigt die App nur die Vorschau

  5. In die Nächtigungstabelle schreiben

    Je Land eine Zeile plus die Gesamtzahl. Gibt es den Monat schon, gilt das neueste PDF.

    In n8n: Zeilen für die Tabelle · In Tabelle speichern · Zusammenfassen · Antwort: gespeichert

Betty: Stadt Salzburg Nächtigungenwenn Betty im Trendbericht auf „Zahlen der Stadt holen“ klickt

Holt die Monatszahlen der Stadt Salzburg als Vergleich für den Trendbericht direkt von der Website der Stadt.

janeinjaneinAnfrage von der App · webhook · Station 1: Auftrag annehmenAnfrage von der AppSTART1Statistikseite der Stadt holen · httpRequest · Station 2: Neuestes PDF der Stadt findenStatistikseite derStadt holenHTTP2PDF-Adresse bestimmen · code · Station 2: Neuestes PDF der Stadt findenPDF-Adresse bestimmenCODE2PDF der Stadt holen · httpRequest · Station 3: PDF holen und lesenPDF der Stadt holenHTTP3PDF-Text lesen · extractFromFile · Station 3: PDF holen und lesenPDF-Text lesenFELD3Zahlen auslesen · code · Station 4: Zahlen herauslesen und prüfenZahlen auslesenCODE4Sicher gelesen? · if · Station 4: Zahlen herauslesen und prüfenSicher gelesen?WEICHE4Antwort: nicht lesbar · respondToWebhook · Station 4: Zahlen herauslesen und prüfenAntwort: nicht lesbarANTWORT4Speichern? · if · Station 5: Erst zeigen, dann speichernSpeichern?WEICHE5Antwort: Vorschau · respondToWebhook · Station 5: Erst zeigen, dann speichernAntwort: VorschauANTWORT5Zeilen für die Tabelle · code · Station 6: In die Nächtigungstabelle schreibenZeilen für dieTabelleCODE6In Tabelle speichern · dataTable · Station 6: In die Nächtigungstabelle schreibenIn Tabelle speichernDATEN6Zusammenfassen · code · Station 6: In die Nächtigungstabelle schreibenZusammenfassenCODE6Antwort: gespeichert · respondToWebhook · Station 6: In die Nächtigungstabelle schreibenAntwort: gespeichertANTWORT6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag annehmen

    Die App sagt, ob nur nachgesehen oder schon gespeichert werden soll.

    In n8n: Anfrage von der App

  2. Neuestes PDF der Stadt finden

    Eine Schnittstelle gibt es nicht, nur PDFs. n8n öffnet deshalb die Statistikseite der Stadt, und ein kleines Programmstück sucht dort den Link zum neuesten Monatsbericht.

    In n8n: Statistikseite der Stadt holen · PDF-Adresse bestimmen

  3. PDF holen und lesen

    n8n lädt das PDF herunter und zieht den Text heraus.

    In n8n: PDF der Stadt holen · PDF-Text lesen

  4. Zahlen herauslesen und prüfen

    Je Monat werden Ankünfte und Nächtigungen samt Vorjahr gelesen und nachgerechnet. Kleine Abweichungen durch Nachmeldungen der Stadt kommen als Hinweis mit.

    In n8n: Zahlen auslesen · Sicher gelesen? · Antwort: nicht lesbar

    WeicheWenn die Kontrollen aufgehen: geht es weiter zur Vorschau oder zum Speichern Sonst: meldet die App, dass die Zahlen nicht sicher gelesen werden konnten, statt falsche Zahlen zu liefern

  5. Erst zeigen, dann speichern

    Zuerst zeigt die App die gelesenen Monate. Gespeichert wird erst nach Bettys „Stimmt, speichern“.

    In n8n: Speichern? · Antwort: Vorschau

  6. In die Nächtigungstabelle schreiben

    Je Monat zwei Zeilen, für das laufende Jahr und das Vorjahr. Das neueste PDF gilt.

    In n8n: Zeilen für die Tabelle · In Tabelle speichern · Zusammenfassen · Antwort: gespeichert

Betty: Trendbericht Zahlenwenn Betty die Seite „Trendbericht“ öffnet oder auf „Excel herunterladen“ klickt

Rechnet aus den gespeicherten Nächtigungen die Zahlen für die Folien der Vollversammlung und für die Excel-Liste.

Anfrage von der App · webhook · Station 1: Anfrage annehmenAnfrage von der AppSTART1Nächtigungen laden · dataTable · Station 2: Nächtigungen aus der Tabelle holenNächtigungen ladenDATEN2Folienzahlen rechnen · code · Station 3: Folienzahlen rechnenFolienzahlen rechnenCODE3Antwort an die App · respondToWebhook · Station 4: Zahlen an die App schickenAntwort an die AppANTWORT4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Anfrage annehmen

    Die App sagt, was sie braucht: die Folien im Herbst (Jänner bis zum letzten Monat), die Folien zum Jahresbeginn (ganzes Vorjahr) oder die Daten für die Excel-Liste.

    In n8n: Anfrage von der App

  2. Nächtigungen aus der Tabelle holen

    Alle gespeicherten Zahlen von Eugendorf und der Stadt Salzburg, zurück bis 2019.

    In n8n: Nächtigungen laden

  3. Folienzahlen rechnen

    Ein kleines Programmstück zählt zusammen und vergleicht mit dem Vorjahr: Monate, Aufenthaltsdauer, elf feste Herkunftsländer und auffällige weitere Länder. Die KI ist hier nicht beteiligt.

    In n8n: Folienzahlen rechnen

  4. Zahlen an die App schicken

    Die App zeichnet daraus die Diagramme zum Kopieren in die PowerPoint oder baut die Excel-Datei im Aufbau von Bettys bisheriger Liste.

    In n8n: Antwort an die App

Betty: Trend-Recherchewenn Betty im Trendbericht auf „Recherche starten“ klickt; danach fragt die App alle 10 Sekunden nach dem Stand

Die KI (Claude) recherchiert Trends und Ausblick für die Vollversammlung oder ein Lagebild zu einem Ereignis, und n8n prüft jede Aussage gegen ihre Quelle.

janeinjaneinjaneinjaneinjaneinAnfrage von der App · webhook · Station 1: Wunsch der App erkennenAnfrage von der AppSTART1Stand abfragen? · if · Station 1: Wunsch der App erkennenStand abfragen?WEICHE1Liste abfragen? · if · Station 1: Wunsch der App erkennenListe abfragen?WEICHE1Bericht laden · dataTable · Station 2: Stand und frühere Berichte zeigenBericht ladenDATEN2Stand aufbereiten · code · Station 2: Stand und frühere Berichte zeigenStand aufbereitenCODE2Antwort: Stand · respondToWebhook · Station 2: Stand und frühere Berichte zeigenAntwort: StandANTWORT2Berichte laden · dataTable · Station 2: Stand und frühere Berichte zeigenBerichte ladenDATEN2Liste aufbereiten · code · Station 2: Stand und frühere Berichte zeigenListe aufbereitenCODE2Antwort: Liste · respondToWebhook · Station 2: Stand und frühere Berichte zeigenAntwort: ListeANTWORT2Anfrage bauen · code · Station 4: Auftrag für die KI vorbereitenAnfrage bauenCODE4Anfrage gültig? · if · Station 4: Auftrag für die KI vorbereitenAnfrage gültig?WEICHE4Antwort: ungültig · respondToWebhook · Station 4: Auftrag für die KI vorbereitenAntwort: ungültigANTWORT4Bericht anlegen · dataTable · Station 5: Starten und gleich Bescheid gebenBericht anlegenDATEN5Antwort: gestartet · respondToWebhook · Station 5: Starten und gleich Bescheid gebenAntwort: gestartetANTWORT5Recherche (Claude) · httpRequest · Station 6: Die KI recherchiert im NetzRecherche (Claude)HTTP6Pausiert? · if · Station 6: Die KI recherchiert im NetzPausiert?WEICHE6Weiter recherchieren · httpRequest · Station 6: Die KI recherchiert im NetzWeiter recherchierenHTTP6Aussagen prüfen · code · Station 7: Jede Aussage prüfen und speichernAussagen prüfenCODE7Ergebnis speichern · dataTable · Station 7: Jede Aussage prüfen und speichernErgebnis speichernDATEN7Löschen? · if · Station 1: Wunsch der App erkennenLöschen?WEICHE1Bericht löschen · dataTable · Station 3: Alten Bericht löschenBericht löschenDATEN3Antwort: gelöscht · respondToWebhook · Station 3: Alten Bericht löschenAntwort: gelöschtANTWORT3
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Wunsch der App erkennen

    Die App will entweder eine neue Recherche starten, den Stand einer laufenden abfragen, frühere Berichte sehen oder einen löschen. Drei Weichen schicken die Anfrage in den passenden Zweig.

    In n8n: Anfrage von der App · Stand abfragen? · Liste abfragen? · Löschen?

    WeicheWenn die App nur den Stand, die Liste oder das Löschen möchte: antwortet n8n direkt aus der Berichte-Tabelle Sonst: startet eine neue Recherche

  2. Stand und frühere Berichte zeigen

    Aus der Berichte-Tabelle holt n8n den Stand einer laufenden Recherche oder die Liste der letzten Berichte, neueste zuerst.

    In n8n: Bericht laden · Stand aufbereiten · Antwort: Stand · Berichte laden · Liste aufbereiten · Antwort: Liste

  3. Alten Bericht löschen

    Nach Rückfrage in der App wird genau dieser eine Bericht entfernt.

    In n8n: Bericht löschen · Antwort: gelöscht

  4. Auftrag für die KI vorbereiten

    Ein kleines Programmstück baut den Auftrag: Trends oder Lagebild, Bettys Notizen und Links, und zuerst ihre Liste vertrauenswürdiger Quellen. Beim Lagebild kommen die Eugendorf-Zahlen mit, die n8n vorher gerechnet hat.

    In n8n: Anfrage bauen · Anfrage gültig? · Antwort: ungültig

  5. Starten und gleich Bescheid geben

    n8n legt den Bericht in der Tabelle an und gibt der App sofort eine Nummer. So muss niemand vor dem Bildschirm warten.

    In n8n: Bericht anlegen · Antwort: gestartet

  6. Die KI recherchiert im Netz

    Die KI (Claude) sucht im Internet, zuerst auf Bettys Quellenliste, und schreibt kurze Aussagen, jede mit Quelle. Braucht sie länger, schickt n8n sie in eine zweite Runde.

    In n8n: Recherche (Claude) · Pausiert? · Weiter recherchieren

  7. Jede Aussage prüfen und speichern

    Ein kleines Programmstück prüft jede Aussage: Ohne Quelle fliegt sie raus, und jede Zahl muss wörtlich im zitierten Satz stehen. Das Ergebnis samt Streichliste wird gespeichert.

    In n8n: Aussagen prüfen · Ergebnis speichern

Vorhaben 3Nächtigungsbericht für jeden Zeitraum

Wie lief der Sommer im Vergleich zum Vorjahr, und lag es vielleicht am Wetter oder an den Ferien? Für solche Fragen wählt Betty einen Zeitraum, eine Saison oder ein Jahr, und bekommt einen fertigen Bericht: jeden Monat gegen das Vorjahr, dazu die Herkunftsländer, Schulferien, Feiertage und das Wetter. Er nutzt dieselben Nächtigungszahlen, die Betty im Trendbericht pflegt, und lässt sich als PDF speichern.

So sieht das Ergebnis aus
Der Nächtigungsbericht für einen frei wählbaren Zeitraum
Der Nächtigungsbericht für einen frei wählbaren ZeitraumJänner bis August 2026 im Vergleich zum Vorjahr: Kennzahlen, Verlauf je Monat und die Herkunftsländer. Weiter unten folgen Ferien, Feiertage und das Wetter. Als PDF speicherbar.
Betty: Auswertung Zeitraumwenn Betty auf der Seite „Auswertung“ einen Zeitraum wählt und auf „Bericht erstellen“ klickt

Erstellt einen Nächtigungsbericht für einen frei gewählten Zeitraum, jeden Monat gegen das Vorjahr, mit Wetter und Ferien daneben.

janeinAnfrage von der App · webhook · Station 1: Zeitraum annehmenAnfrage von der AppSTART1Nächtigungen laden · dataTable · Station 2: Nächtigungen holen und Zeitraum prüfenNächtigungen ladenDATEN2Zeitraum prüfen · code · Station 2: Nächtigungen holen und Zeitraum prüfenZeitraum prüfenCODE2Zeitraum gültig? · if · Station 2: Nächtigungen holen und Zeitraum prüfenZeitraum gültig?WEICHE2Antwort: ungültig · respondToWebhook · Station 2: Nächtigungen holen und Zeitraum prüfenAntwort: ungültigANTWORT2Wetter holen · httpRequest · Station 3: Wetter holenWetter holenHTTP3Ferien-Anfragen · code · Station 4: Ferien und Feiertage holenFerien-AnfragenCODE4Ferien holen · httpRequest · Station 4: Ferien und Feiertage holenFerien holenHTTP4Bericht rechnen · code · Station 5: Bericht rechnen und zurückschickenBericht rechnenCODE5Antwort an die App · respondToWebhook · Station 5: Bericht rechnen und zurückschickenAntwort an die AppANTWORT5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Zeitraum annehmen

    Betty wählt einzelne Monate, eine Saison (Sommer Mai bis Oktober, Winter November bis April) oder ein ganzes Jahr.

    In n8n: Anfrage von der App

  2. Nächtigungen holen und Zeitraum prüfen

    n8n holt die gespeicherten Nächtigungen und prüft den Zeitraum. Passt er nicht, bekommt die App sofort einen Hinweis.

    In n8n: Nächtigungen laden · Zeitraum prüfen · Zeitraum gültig? · Antwort: ungültig

  3. Wetter holen

    Aus einer freien Wetterquelle kommen Monatswerte der Station Salzburg Flughafen: Temperatur, Regen, Sonnenstunden, Regen- und Sommertage.

    In n8n: Wetter holen

  4. Ferien und Feiertage holen

    Aus einer weiteren freien Quelle kommen die Schulferien aller Bundesländer in Deutschland und Österreich und die Feiertage, für diesen Zeitraum und das Vorjahr.

    In n8n: Ferien-Anfragen · Ferien holen

  5. Bericht rechnen und zurückschicken

    Ein kleines Programmstück stellt jeden Monat dem Vorjahresmonat gegenüber: Nächtigungen, Herkunftsländer, Ferientage und Wetter. Eine kurze Wetter-Deutung entsteht aus festen Regeln, ohne KI. Die App zeigt alles als A4-Bericht zum Speichern als PDF.

    In n8n: Bericht rechnen · Antwort an die App

Vorhaben 4Einheitliche Trackinglinks für Kampagnen

Damit die Kampagnenzahlen später sauber zusammenpassen, braucht jeder Link dieselbe Schreibweise. Im Trackinglink-Generator legt Betty fest, welche Kampagnennamen und Herkunftsseiten erlaubt sind, und wer einen Link braucht, wählt nur noch aus festen Listen. Die App baut den Link, n8n prüft und speichert ihn, und bereits verwendete Partner-Schreibweisen werden vorgeschlagen. Für die Agentur gibt es einen eigenen Zugang, der nur diese Seite öffnet.

So sieht das Ergebnis aus
Der Trackinglink-Generator
Der Trackinglink-GeneratorKampagnenname und Werbemittel kommen aus festen Listen, damit Matomo jeden Besuch sauber zuordnen kann. Die Vorgaben pflegt der Tourismusverband, die Agentur wählt nur aus.
Betty: Trackinglinkswenn jemand auf der Seite „Trackinglinks“ die Listen öffnet, einen Link erstellt oder Betty die Vorgaben pflegt

Merkt sich die erlaubten Kampagnennamen und Herkunftsseiten und speichert jeden Trackinglink, den die App daraus baut.

123456janeinjaneinjaneinAnfrage von der App · webhook · Station 1: Wunsch der App erkennenAnfrage von der AppSTART1Welche Aktion? · switch · Station 1: Wunsch der App erkennenWelche Aktion?WEICHE1Vorgaben laden · dataTable · Station 2: Vorgaben zeigenVorgaben ladenDATEN2Vorgaben sammeln · aggregate · Station 2: Vorgaben zeigenVorgaben sammelnLISTE2Antwort: Vorgaben · respondToWebhook · Station 2: Vorgaben zeigenAntwort: VorgabenANTWORT2Vorgabe prüfen · set · Station 3: Vorgabe prüfen und speichernVorgabe prüfenFELD3Vorgabe gültig? · if · Station 3: Vorgabe prüfen und speichernVorgabe gültig?WEICHE3Vorgabe speichern · dataTable · Station 3: Vorgabe prüfen und speichernVorgabe speichernDATEN3Antwort: Vorgabe gespeichert · respondToWebhook · Station 3: Vorgabe prüfen und speichernAntwort: VorgabegespeichertANTWORT3Antwort: Vorgabe ungültig · respondToWebhook · Station 3: Vorgabe prüfen und speichernAntwort: VorgabeungültigANTWORT3Links laden · dataTable · Station 4: Erstellte Links zeigenLinks ladenDATEN4Links sammeln · aggregate · Station 4: Erstellte Links zeigenLinks sammelnLISTE4Antwort: Links · respondToWebhook · Station 4: Erstellte Links zeigenAntwort: LinksANTWORT4Vorgaben zum Prüfen laden · dataTable · Station 5: Link prüfen und speichernVorgaben zum PrüfenladenDATEN5Link prüfen · set · Station 5: Link prüfen und speichernLink prüfenFELD5Link gültig? · if · Station 5: Link prüfen und speichernLink gültig?WEICHE5Link speichern · dataTable · Station 5: Link prüfen und speichernLink speichernDATEN5Antwort: Link gespeichert · respondToWebhook · Station 5: Link prüfen und speichernAntwort: LinkgespeichertANTWORT5Antwort: Link ungültig · respondToWebhook · Station 5: Link prüfen und speichernAntwort: LinkungültigANTWORT5ID vorhanden? · if · Station 6: Link löschenID vorhanden?WEICHE6Link löschen · dataTable · Station 6: Link löschenLink löschenDATEN6Antwort: Link gelöscht · respondToWebhook · Station 6: Link löschenAntwort: LinkgelöschtANTWORT6Antwort: ID fehlt · respondToWebhook · Station 6: Link löschenAntwort: ID fehltANTWORT6Antwort: Unbekannte Aktion · respondToWebhook · Station 1: Wunsch der App erkennenAntwort: UnbekannteAktionANTWORT1
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Wunsch der App erkennen

    Die App sagt, was sie möchte: Vorgaben zeigen oder speichern, Links zeigen, speichern oder löschen. Eine Weiche schickt die Anfrage in den passenden Zweig, alles andere wird abgelehnt.

    In n8n: Anfrage von der App · Welche Aktion? · Antwort: Unbekannte Aktion

    WeicheWenn es um die Vorgaben geht: geht es in die Vorgaben-Zweige Sonst: geht es in die Link-Zweige zum Zeigen, Speichern oder Löschen (unbekannte Wünsche werden abgelehnt)

  2. Vorgaben zeigen

    Die Liste der erlaubten Kampagnennamen und Herkunftsseiten, zum Beispiel Newsletter, Banner oder Reel.

    In n8n: Vorgaben laden · Vorgaben sammeln · Antwort: Vorgaben

  3. Vorgabe prüfen und speichern

    Kampagnennamen folgen einer festen Schreibregel, zum Beispiel „Rad_2027_Flight1“. Abgeschlossene Kampagnen bleiben erhalten, sind aber nicht mehr auswählbar.

    In n8n: Vorgabe prüfen · Vorgabe gültig? · Vorgabe speichern · Antwort: Vorgabe gespeichert · Antwort: Vorgabe ungültig

  4. Erstellte Links zeigen

    Alle bisher erstellten Trackinglinks, die neuesten zuerst.

    In n8n: Links laden · Links sammeln · Antwort: Links

  5. Link prüfen und speichern

    Die App baut den Link aus Seite, Kampagne, Partner und Herkunftsseite. n8n prüft noch einmal, ob Kampagne und Herkunftsseite freigegeben sind, und speichert ihn dann.

    In n8n: Vorgaben zum Prüfen laden · Link prüfen · Link gültig? · Link speichern · Antwort: Link gespeichert · Antwort: Link ungültig

  6. Link löschen

    Ein einzelner Link wird über seine Nummer gelöscht. Das darf nur der Tourismusverband.

    In n8n: ID vorhanden? · Link löschen · Antwort: Link gelöscht · Antwort: ID fehlt

Das klappt schon
  • Die ersten Partner-Endzahlen sind eingetragen: Für die Rad- und die Imagekampagne ordnet der Kampagnen-Monitor sie dem richtigen Partner zu und rechnet aus, welcher Anteil der gemeldeten Klicks auf der Website ankam. Beim Anlegen einer Kampagne holt die App fast 80 Kampagnennamen aus Matomo zum Anhaken.
  • Ein Gemeinde-PDF hochladen genügt: n8n liest zum Beispiel für August 2026 je Land Ankünfte und Nächtigungen heraus, etwa 5.848 Nächtigungen aus Österreich und 3.953 aus Deutschland, und prüft die Summen. Die Monatszahlen der Stadt Salzburg holt n8n direkt von der Website der Stadt.
  • Die Folienzahlen für die Vollversammlung stehen auf Knopfdruck, zum Beispiel Jänner bis August 2026 mit 74.586 Nächtigungen gegen 76.029 im Vorjahr. Die KI-Recherche hat schon fünf fertige Berichte mit Quellen geliefert, etwa zu Golfurlaub, Radurlaub und zum Reiseverhalten der Bayern.
  • Die App funktioniert auch über ihre veröffentlichte Adresse: Seit dem Abend des 23.09. haben dort die Übersicht, der Trendbericht, der Zeitraum-Bericht mit Wetter und Schulferien und die Trackinglink-Seite ihre Daten geliefert.
Nächster Schritt
  • Mit dem Trainer klären, wie es mit dem Zugang zur Webanalyse und dem Agentur-Zugang weitergeht, und danach gemeinsam mit der Agentur den ersten echten Trackinglink erstellen.
  • Für die übrigen Partner die Endzahlen nachtragen, auch die tatsächlichen Kosten, und Klicks, Reichweite und Kosten immer für die ganze Laufzeit einer Kampagne ansehen.
  • In einer kurzen Anleitung festhalten, welche Seiten die App hat, woher die Zahlen kommen und welche Daten an die KI gehen.

Gut zu wissen:Eine Tabelle, viele Ergebnisse: Betty pflegt ihre Nächtigungszahlen an einer einzigen Stelle, und Folien, Excel-Liste und Zeitraum-Bericht lesen alle daraus. Damit dort nur Richtiges landet, rechnet n8n jedes gelesene PDF nach und speichert erst, wenn Betty die Vorschau bestätigt hat.

Sheila Bsteh · Schönbrunn Group

Mediaplanung für Schloss Hof im Griff

am letzten Tag dazugekommenAm 24.09. ist die Mediaplanung in NocoDB umgezogen, eine Datenbank mit Tabellenansicht, in der Veranstaltungen, Schaltungen, Aufgaben und Auswertungen miteinander verknüpft sind; alle fünf Mediaplan-Abläufe lesen und schreiben jetzt dort und zählen vorher nach, ob sie wirklich alles bekommen haben. Das Dashboard zeigt zusätzlich die offenen Aufgaben der Produktionsplanung, das Reporting erkennt die Dateiart jetzt sicher am Dateinamen, und der Fristen-Wächter ist am 24.09. um 8 Uhr zum ersten Mal ganz von selbst gelaufen.

Vorhaben 1Mediaplanung für Schloss Hof im Griff

Sheila plant die Werbung für die Veranstaltungen von Schloss Hof: Anzeigen, Plakate, Online-Banner und Social Media. Dabei muss sie viele Fristen im Blick behalten und die Zahlen der Medienpartner einsammeln, die jeder anders liefert. Seit dem 24.09. liegt der ganze Mediaplan in NocoDB, einer Datenbank mit Tabellenansicht, in der Veranstaltungen, Schaltungen, Aufgaben und Auswertungen miteinander verknüpft sind. Ihre Abläufe erinnern an fällige Termine, lesen die Partnerberichte aus, zeigen den Stand aller Schaltungen und Aufgaben auf einer Übersichtsseite und schreiben am Ende eine Auswertung je Veranstaltung.

So sieht das Ergebnis aus
Das Dashboard zur Mediaplanung
am letzten Tag dazugekommenDas Dashboard zur MediaplanungZeigt auf einen Blick, welche Schaltungen offen sind und was dringend ist: überfällig, heute fällig, erinnert, später, dazu die Aufgaben der Produktionsplanung. Stand 24.09., 10:58. Die Namen in der Spalte „Zuständig“ sind für diese Seite durch „Team“ ersetzt.
Die Endauswertung einer Veranstaltung
Die Endauswertung einer VeranstaltungEntsteht, wenn das Formular abgeschickt wird.
Die Erinnerung an fällige Punkte
Die Erinnerung an fällige PunkteMeldet, was in der Mediaplanung als Nächstes ansteht.
So spielen die Teile zusammen

Alle fünf Abläufe arbeiten mit derselben Mediaplanung in NocoDB: Was die beiden Formulare dort eintragen, sehen Fristen-Wächter, Dashboard und Endauswertung sofort. Jeder Ablauf zählt vor dem Lesen nach und bricht lieber ab, als mit einer halben Liste weiterzuarbeiten. Dashboard und Morgenmail folgen denselben Fristenregeln.

  • Sheila: Fristen-Wächter Mediaplanungerinnert täglich an fällige Termine
  • Sheila: Material-Abgabemeldet, dass Material da ist
  • Sheila: Reporting erfassenliest Partnerzahlen aus Dateien
  • Sheila: Dashboard Mediaplanungzeigt Schaltungen und Aufgaben
  • Sheila: Veranstaltungs-Endauswertungschreibt Auswertung je Veranstaltung
  • Sheila: Material-AbgabeSheila: Fristen-Wächter MediaplanungMaterial da, Erinnerung verstummt
  • Sheila: Reporting erfassenSheila: Fristen-Wächter MediaplanungReporting da, Erinnerung verstummt
  • Sheila: Fristen-Wächter MediaplanungSheila: Dashboard Mediaplanungwelche Erinnerungen schon raus sind
  • Sheila: Material-AbgabeSheila: Dashboard Mediaplanungneuer Stand sofort sichtbar
  • Sheila: Reporting erfassenSheila: Veranstaltungs-Endauswertungliefert Ist-Zahlen je Schaltung
Sheila: Fristen-Wächter Mediaplanungjeden Morgen um 8 Uhr, eingeschaltet und am 24.09. früh zum ersten Mal von selbst gelaufen; zum Testen auch per Klick

Prüft jeden Morgen alle Schaltungen und schickt eine Sammelmail mit allem, was heute fällig ist.

jajaneinTest starten · manualTrigger · Station 1: Morgens startenTest startenSTART1Jeden Tag 8 Uhr · scheduleTrigger · Station 1: Morgens startenJeden Tag 8 UhrSTART1Konfiguration · set · Station 1: Morgens startenKonfigurationFELD1Fällige Punkte bestimmen · code · Station 3: Fällige Fristen findenFällige PunktebestimmenCODE3Etwas fällig? · if · Station 3: Fällige Fristen findenEtwas fällig?WEICHE3Digest als Datei · convertToFile · Station 4: Sammelmail verschickenDigest als DateiFELD4Mail an mich (Brevo) · sendInBlue · Station 4: Sammelmail verschickenMail an mich (Brevo)MAIL4Outlook-Entwurf (eigene n8n) · microsoftOutlook · Station 4: Sammelmail verschickenOutlook-Entwurf(eigene n8n)MAIL4Sperrfelder aufteilen · code · Station 5: Erinnerung merkenSperrfelder aufteilenCODE5Heute nichts zu tun · noOp · Station 3: Fällige Fristen findenHeute nichts zu tunFELD3Schaltungen zählen (NocoDB) · nocoDb · Station 2: Offene Schaltungen holenSchaltungen zählen(NocoDB)DATEN2Schaltungen lesen (NocoDB) · nocoDb · Station 2: Offene Schaltungen holenSchaltungen lesen(NocoDB)DATEN2Mediaplan lesen (offene Zeilen) · code · Station 2: Offene Schaltungen holenMediaplan lesen(offene Zeilen)CODE2Sperrfeld schreiben · nocoDb · Station 5: Erinnerung merkenSperrfeld schreibenDATEN5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Morgens starten

    Der Ablauf startet um 8 Uhr oder per Klick. Zuerst steht fest, wer die Mail bekommt.

    In n8n: Test starten · Jeden Tag 8 Uhr · Konfiguration

  2. Offene Schaltungen holen

    Aus der Mediaplanung in NocoDB kommen alle Schaltungen, die nicht archiviert sind. Zuerst wird gezählt, dann gelesen: Stimmen die beiden Zahlen nicht überein, bricht der Ablauf ab, statt mit einer unvollständigen Liste zu mailen. Ein kleines Programmstück übersetzt danach die Spaltennamen aus NocoDB in die Namen, mit denen die Regeln geprüft sind.

    In n8n: Schaltungen zählen (NocoDB) · Schaltungen lesen (NocoDB) · Mediaplan lesen (offene Zeilen)

  3. Fällige Fristen finden

    Ein kleines Programmstück prüft je Schaltung drei Schritte: Material vom Produktmanagement, Material an den Medienpartner, Reporting zurück. Was fällig ist, kommt mit fertigem Erinnerungstext auf die Liste. Ist nichts fällig, ist für heute Schluss.

    In n8n: Fällige Punkte bestimmen · Etwas fällig? · Heute nichts zu tun

    WeicheWenn mindestens ein Punkt ist heute fällig: Sammelmail verschicken und Erinnerung merken Sonst: heute nichts tun

  4. Sammelmail verschicken

    Alle fälligen Punkte gehen in einer einzigen, schön gestalteten Mail an Sheila. Ein Outlook-Entwurf ist schon vorbereitet und kann später dazukommen.

    In n8n: Digest als Datei · Mail an mich (Brevo) · Outlook-Entwurf (eigene n8n)

  5. Erinnerung merken

    Je Schaltung wird in NocoDB notiert, für welchen Termin schon erinnert wurde. So kommt morgen keine doppelte Mail. Verschiebt sich ein Termin, erinnert der Ablauf neu.

    In n8n: Sperrfelder aufteilen · Sperrfeld schreiben

Sheila: Material-Abgabewenn jemand aus dem Produktmanagement das Formular abschickt

Ein Formular, mit dem das Produktmanagement meldet, dass das Werbematerial für eine Schaltung da ist.

janeinFormular: Material abgeben · formTrigger · Station 1: Material meldenFormular: MaterialabgebenSTART1Ad-ID gefunden? · if · Station 2: Schaltung suchenAd-ID gefunden?WEICHE2Bestätigung · form · Station 4: Rückmeldung zeigenBestätigungANTWORT4Ad-ID unbekannt · form · Station 4: Rückmeldung zeigenAd-ID unbekanntANTWORT4Zeile suchen (NocoDB) · nocoDb · Station 2: Schaltung suchenZeile suchen (NocoDB)DATEN2Zeile suchen · code · Station 2: Schaltung suchenZeile suchenCODE2Material eintragen (NocoDB) · nocoDb · Station 3: Material eintragenMaterial eintragen(NocoDB)DATEN3Material eintragen · code · Station 3: Material eintragenMaterial eintragenCODE3
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Material melden

    Im Formular stehen die Nummer der Schaltung, der Link zum Material und ein Kommentar.

    In n8n: Formular: Material abgeben

  2. Schaltung suchen

    Der Ablauf sucht die Nummer in der Mediaplanung in NocoDB. Sonderzeichen in der Eingabe werden vorher entfernt, damit niemand die Suche verbiegen kann. Nur wenn es die Schaltung genau einmal gibt, geht es weiter.

    In n8n: Zeile suchen (NocoDB) · Zeile suchen · Ad-ID gefunden?

    WeicheWenn die Nummer steht im Mediaplan: Material eintragen und bestätigen Sonst: Hinweis zeigen: Nummer unbekannt, nichts gespeichert

  3. Material eintragen

    Datum, Link und Kommentar landen in der richtigen Zeile in NocoDB, ein kleines Programmstück liest die Antwort zurück. Damit verstummt die Erinnerung im Fristen-Wächter von selbst.

    In n8n: Material eintragen (NocoDB) · Material eintragen

  4. Rückmeldung zeigen

    Die Person sieht sofort, was gespeichert wurde. Bei einer unbekannten Nummer steht dort klar, dass nichts gespeichert wurde.

    In n8n: Bestätigung · Ad-ID unbekannt

Sheila: Reporting erfassenwenn jemand im Formular eine Reporting-Datei hochlädt

Nimmt die Reporting-Datei eines Medienpartners an, lässt die KI die Zahlen ablesen und rechnet daraus die Kennzahlen.

123janeinFormular: Reporting erfassen · formTrigger · Station 1: Datei hochladenFormular: ReportingerfassenSTART1Datei normalisieren · code · Station 1: Datei hochladenDatei normalisierenCODE1Dateityp? · switch · Station 2: Datei lesenDateityp?WEICHE2Excel lesen · extractFromFile · Station 2: Datei lesenExcel lesenFELD2CSV als Text lesen · extractFromFile · Station 2: Datei lesenCSV als Text lesenFELD2PDF lesen · extractFromFile · Station 2: Datei lesenPDF lesenFELD2Rohtext bauen · code · Station 2: Datei lesenRohtext bauenCODE2Ad-ID gefunden? · if · Station 3: Schaltung findenAd-ID gefunden?WEICHE3Kennzahlen ablesen (KI) · chainLlm · Station 4: Zahlen ablesenKennzahlen ablesen(KI)KI4Sprachmodell (Claude) · lmChatAnthropic · Station 4: Zahlen ablesenSprachmodell(Claude)KI4Format: Kennzahlen · outputParserStructured · Station 4: Zahlen ablesenFormat: KennzahlenKI4Kennzahlen rechnen · code · Station 5: Kennzahlen rechnenKennzahlen rechnenCODE5Bestätigung · form · Station 6: Eintragen und bestätigenBestätigungANTWORT6Ad-ID unbekannt · form · Station 3: Schaltung findenAd-ID unbekanntANTWORT3Zeile suchen (NocoDB) · nocoDb · Station 3: Schaltung findenZeile suchen (NocoDB)DATEN3Zeile suchen · code · Station 3: Schaltung findenZeile suchenCODE3Reporting eintragen · nocoDb · Station 6: Eintragen und bestätigenReporting eintragenDATEN6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Datei hochladen

    Sheila gibt die Nummer der Schaltung an und lädt die Datei des Medienpartners hoch. Die Dateiart wird jetzt am Dateinamen erkannt; eine andere Datei als Excel, CSV oder PDF wird abgelehnt, und es wird nichts gespeichert.

    In n8n: Formular: Reporting erfassen · Datei normalisieren

  2. Datei lesen

    Je nach Art der Datei (Excel, CSV oder PDF) wird der Inhalt gelesen und zu einem Text zusammengestellt. Kommt dabei kein Text heraus, etwa bei einer leeren Datei oder einem eingescannten PDF, bricht der Ablauf ab, statt leere Zahlen zu speichern.

    In n8n: Dateityp? · Excel lesen · CSV als Text lesen · PDF lesen · Rohtext bauen

  3. Schaltung finden

    Der Ablauf sucht die passende Schaltung in der Mediaplanung in NocoDB. Gibt es die Nummer nicht, wird nichts gespeichert.

    In n8n: Zeile suchen (NocoDB) · Zeile suchen · Ad-ID gefunden? · Ad-ID unbekannt

    WeicheWenn die Nummer steht im Mediaplan: Zahlen ablesen, rechnen und eintragen Sonst: Hinweis zeigen: Nummer unbekannt, nichts gespeichert

  4. Zahlen ablesen

    Die KI (Claude) liest nur Impressions und Klicks ab. Sie rechnet nichts und erfindet nichts. Gerade weil jeder Partner ein anderes Layout schickt, hilft sie hier.

    In n8n: Kennzahlen ablesen (KI) · Sprachmodell (Claude) · Format: Kennzahlen

  5. Kennzahlen rechnen

    Ein kleines Programmstück rechnet Erfüllung, Klickrate und die Kosten je tausend Kontakte und je Klick. Fehlen die Impressions, bricht es mit einer klaren Meldung ab.

    In n8n: Kennzahlen rechnen

  6. Eintragen und bestätigen

    Impressions und Klicks landen in NocoDB in der richtigen Zeile, und Sheila sieht die Kennzahlen sofort auf dem Bildschirm.

    In n8n: Reporting eintragen · Bestätigung

Sheila: Dashboard Mediaplanungwenn jemand die Seite im Browser öffnet und sich anmeldet

Eine Übersichtsseite, die beim Öffnen zeigt, wie viele Schaltungen in welcher Phase stehen, was als Nächstes dringend ist und welche Aufgaben der Produktionsplanung noch offen sind.

Dashboard öffnen · webhook · Station 1: Seite öffnenDashboard öffnenSTART1Dashboard bauen · code · Station 4: Stand einordnenDashboard bauenCODE4Seite ausliefern · respondToWebhook · Station 5: Seite anzeigenSeite ausliefernANTWORT5Schaltungen zählen (NocoDB) · nocoDb · Station 2: Mediaplan lesenSchaltungen zählen(NocoDB)DATEN2Schaltungen lesen (NocoDB) · nocoDb · Station 2: Mediaplan lesenSchaltungen lesen(NocoDB)DATEN2Aufgaben zählen (NocoDB) · nocoDb · Station 3: Aufgaben holenAufgaben zählen(NocoDB)DATEN3Aufgaben lesen (NocoDB) · nocoDb · Station 3: Aufgaben holenAufgaben lesen(NocoDB)DATEN3Produktionsplanung lesen · code · Station 3: Aufgaben holenProduktionsplanunglesenCODE3Mediaplan lesen · code · Station 2: Mediaplan lesenMediaplan lesenCODE2
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Seite öffnen

    Wer die Adresse im Browser öffnet und sich anmeldet, startet den Ablauf.

    In n8n: Dashboard öffnen

  2. Mediaplan lesen

    Alle laufenden Schaltungen kommen aus NocoDB, erst gezählt, dann gelesen. Stimmen die Zahlen nicht überein, zeigt der Ablauf lieber gar nichts als einen halben Stand. Er liest nur und ändert nichts.

    In n8n: Schaltungen zählen (NocoDB) · Schaltungen lesen (NocoDB) · Mediaplan lesen

  3. Aufgaben holen

    Neu seit dem 24.09.: Auch die Aufgaben der Produktionsplanung kommen dazu, mit Deadline, Status und Zuständigkeit. Auch hier wird erst gezählt, dann gelesen.

    In n8n: Aufgaben zählen (NocoDB) · Aufgaben lesen (NocoDB) · Produktionsplanung lesen

  4. Stand einordnen

    Ein kleines Programmstück ordnet jede Schaltung nach denselben Regeln wie der Fristen-Wächter ein: überfällig, heute fällig, Erinnerung läuft, Termin fehlt oder später fällig. Darunter kommen die offenen Aufgaben, geordnet nach überfällig, in den nächsten sieben Tagen, ohne Deadline und später. Daraus entsteht eine Seite im Erscheinungsbild des Hauses, das Dringendste steht oben.

    In n8n: Dashboard bauen

  5. Seite anzeigen

    Die fertige Seite erscheint sofort im Browser. Sie zeigt immer den Stand von jetzt, nie eine alte Fassung.

    In n8n: Seite ausliefern

Sheila: Veranstaltungs-Endauswertungwenn jemand im Formular den Namen einer Veranstaltung einträgt

Erstellt auf Knopfdruck eine Endauswertung für eine Veranstaltung, mit Kennzahlen, Diagrammen und KI-Einordnung.

Veranstaltung waehlen · formTrigger · Station 1: Veranstaltung wählenVeranstaltung waehlenSTART1Kennzahlen rechnen · code · Station 3: Kennzahlen rechnenKennzahlen rechnenCODE3Einordnung schreiben (KI) · chainLlm · Station 4: Einordnung schreibenEinordnung schreiben(KI)KI4Sprachmodell (Claude) · lmChatAnthropic · Station 4: Einordnung schreibenSprachmodell(Claude)KI4Format: Auswertung · outputParserStructured · Station 4: Einordnung schreibenFormat: AuswertungKI4Bericht bauen · code · Station 5: Bericht gestaltenBericht bauenCODE5Auswertung als Datei · convertToFile · Station 5: Bericht gestaltenAuswertung als DateiFELD5Auswertung anzeigen · form · Station 6: Ablegen und anzeigenAuswertung anzeigenANTWORT6Veranstaltungen zählen (NocoDB) · nocoDb · Station 2: Daten holenVeranstaltungenzählen (NocoDB)DATEN2Veranstaltungen lesen (NocoDB) · nocoDb · Station 2: Daten holenVeranstaltungen lesen(NocoDB)DATEN2Veranstaltung laden · code · Station 2: Daten holenVeranstaltung ladenCODE2Schaltungen zählen (NocoDB) · nocoDb · Station 2: Daten holenSchaltungen zählen(NocoDB)DATEN2Schaltungen lesen (NocoDB) · nocoDb · Station 2: Daten holenSchaltungen lesen(NocoDB)DATEN2Alle Schaltungen lesen · code · Station 2: Daten holenAlle SchaltungenlesenCODE2Auswertung ablegen · nocoDb · Station 6: Ablegen und anzeigenAuswertung ablegenDATEN6Auswertung der Veranstaltung zuordnen · nocoDb · Station 6: Ablegen und anzeigenAuswertung derVeranstaltung zuordn…DATEN6Veranstaltung als ausgewertet markieren · nocoDb · Station 6: Ablegen und anzeigenVeranstaltung alsausgewertet markierenDATEN6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Veranstaltung wählen

    Im Formular steht nur der Name der Veranstaltung, genau wie im Mediaplan.

    In n8n: Veranstaltung waehlen

  2. Daten holen

    Ziel, Budget und Besucherzahlen der Veranstaltung und alle Schaltungen kommen aus NocoDB, jeweils erst gezählt, dann gelesen. Steht die Veranstaltung nicht in NocoDB, bricht der Ablauf ab, statt ohne Ziel und Budget zu rechnen.

    In n8n: Veranstaltungen zählen (NocoDB) · Veranstaltungen lesen (NocoDB) · Veranstaltung laden · Schaltungen zählen (NocoDB) · Schaltungen lesen (NocoDB) · Alle Schaltungen lesen

  3. Kennzahlen rechnen

    Ein kleines Programmstück rechnet je Schaltung und gesamt Erfüllung, Klickrate und Kosten je Kontakt und Klick. Dazu vergleicht es mit den typischen Werten früherer Veranstaltungen je Kanal.

    In n8n: Kennzahlen rechnen

  4. Einordnung schreiben

    Die KI (Claude) bekommt die fertigen Zahlen und schreibt eine Einordnung mit Verbesserungsvorschlägen. Nachrechnen darf sie nicht.

    In n8n: Einordnung schreiben (KI) · Sprachmodell (Claude) · Format: Auswertung

  5. Bericht gestalten

    Der Bericht entsteht im Erscheinungsbild von Schloss Hof, mit Diagrammen. Jede Zahl im KI-Text wird gegen die gerechneten Werte geprüft.

    In n8n: Bericht bauen · Auswertung als Datei

  6. Ablegen und anzeigen

    Die Auswertung wird in NocoDB gespeichert und mit ihrer Veranstaltung verknüpft, die Veranstaltung bekommt das Datum der Auswertung, und die Kurzfassung mit dem Ergebnis der Zahlenprüfung erscheint sofort auf dem Bildschirm.

    In n8n: Auswertung ablegen · Auswertung der Veranstaltung zuordnen · Veranstaltung als ausgewertet markieren · Auswertung anzeigen

Vorhaben 2Instagram-Vergleich mit anderen Kulturhäusern

Sheila möchte wissen, wie die Instagram-Beiträge des eigenen Museums im Vergleich mit anderen Kulturhäusern ankommen und welche Art von Beitrag gut funktioniert. Jeden Montag sammeln ihre Abläufe die öffentlichen Beiträge, lassen sie von der KI einordnen und rechnen einen fairen Vergleich. Eine eigene Web-App zeigt alles übersichtlich an: Überblick, Beitragsliste, Follower-Zuwachs und ein Konzept-Studio, in dem sich eine neue Beitragsidee vorab mit ähnlichen echten Beiträgen vergleichen lässt.

So sieht das Ergebnis aus
Der wöchentliche Social-Media-Benchmark
Der wöchentliche Social-Media-BenchmarkVergleicht das eigene Haus mit anderen Wiener Häusern und ordnet die Zahlen in Worten ein. Hier der obere Teil; darunter folgen die stärksten Beiträge der Woche.
Das Konzept-Studio in ihrer App
Das Konzept-Studio in ihrer AppEine Beitragsidee eingeben: Das Studio sucht die ähnlichsten Beiträge der letzten 30 Tage, eigene und fremde, und zeigt, wie sie tatsächlich gelaufen sind, samt Einordnung in Worten. Hier das Ergebnis einer echten Prüfung vom 23.09.; fremde Konten und ihre Beiträge sind für diese Seite ausgeblendet.
So spielen die Teile zusammen

Montags laufen vier Abläufe nacheinander: sammeln, Bilder sichern, einordnen, auswerten. Die neue Web-App holt sich die fertige Auswertung und fragt für das Konzept-Studio einen fünften Ablauf; so zeigen Wochenmail und App immer dieselben Zahlen.

  • sb: Benchmark sammelnholt jeden Montag neue Beiträge
  • sb: Thumbnails sichernsichert Vorschaubilder dauerhaft
  • sb: Benchmark einordnenKI ordnet Beiträge nach Themen
  • sb: Benchmark auswertenrechnet Vergleich für App und Mail
  • sb: Konzept pruefenprüft Beitragsideen im Konzept-Studio
  • sb: Benchmark sammelnsb: Thumbnails sichernneue Beiträge mit Bildern
  • sb: Benchmark sammelnsb: Benchmark einordnenneue Beiträge zum Einordnen
  • sb: Benchmark sammelnsb: Benchmark auswertenBeiträge und Follower-Verlauf
  • sb: Benchmark einordnensb: Benchmark auswertenliefert Thema, Aufhänger, Gefühl
  • sb: Thumbnails sichernsb: Benchmark auswertenliefert dauerhafte Vorschaubilder
  • sb: Benchmark einordnensb: Konzept pruefenFingerabdrücke für die Ähnlichkeitssuche
sb: Benchmark sammelnjeden Montag um 6 Uhr

Holt jede Woche die neuen Instagram-Beiträge des eigenen Hauses und der Vergleichshäuser und legt sie sauber ab.

12janeinWochentakt · scheduleTrigger · Station 1: Montags startenWochentaktSTART1Accounts lesen · httpRequest · Station 2: Vergleichsliste holenAccounts lesenHTTP2Kostenbremse · code · Station 2: Vergleichsliste holenKostenbremseCODE2Je Account · splitInBatches · Station 3: Beiträge abholenJe AccountLISTE3Apify holen · httpRequest · Station 3: Beiträge abholenApify holenHTTP3Aufbereiten · code · Station 4: AufräumenAufbereitenCODE4Gibt es Beitraege? · if · Station 4: AufräumenGibt es Beitraege?WEICHE4Beitraege speichern · httpRequest · Station 5: SpeichernBeitraege speichernHTTP5Bestand pruefen · httpRequest · Station 6: NachzählenBestand pruefenHTTP6Zusammenfassung · code · Station 6: NachzählenZusammenfassungCODE6Zeitreihe schreiben · httpRequest · Station 5: SpeichernZeitreihe schreibenHTTP5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Montags starten

    Jeden Montag um 6 Uhr startet der Ablauf von selbst. Zum Ausprobieren lässt er sich im Editor auch von Hand starten.

    In n8n: Wochentakt

  2. Vergleichsliste holen

    Aus der Datenbank kommt die Liste der Konten: das eigene Haus und ausgewählte Kulturhäuser. Eine Kostenbremse hält an, wenn die Liste zu lang wird, denn jeder Abruf kostet Geld.

    In n8n: Accounts lesen · Kostenbremse

  3. Beiträge abholen

    Konto für Konto holt ein Sammeldienst die öffentlichen Beiträge der letzten 30 Tage, mit Likes und Kommentaren.

    In n8n: Je Account · Apify holen

  4. Aufräumen

    Ein kleines Programmstück räumt die Rohdaten auf: doppelte Karussell-Bilder, alte angepinnte Beiträge und versteckte Like-Zahlen verfälschen sonst still die Zahlen.

    In n8n: Aufbereiten · Gibt es Beitraege?

    WeicheWenn für das Konto gibt es neue Beiträge: speichern, dann weiter zum nächsten Konto Sonst: gleich weiter zum nächsten Konto

  5. Speichern

    Die Beiträge landen in der Datenbank. Zusätzlich wird der heutige Stand von Likes und Followern festgehalten, damit man die Entwicklung über die Wochen sieht.

    In n8n: Beitraege speichern · Zeitreihe schreiben

  6. Nachzählen

    Am Ende wird in der Datenbank gezählt, wie viele Beiträge je Konto da sind. Ein grüner Lauf allein ist noch kein Beweis.

    In n8n: Bestand pruefen · Zusammenfassung

sb: Thumbnails sichernjeden Montag um 6:45 Uhr, direkt nach dem Sammeln

Sichert die Vorschaubilder der neuen Beiträge dauerhaft, bevor die Bildadressen bei Instagram ablaufen.

janeinNach dem Sammeln · scheduleTrigger · Station 1: Nach dem Sammeln startenNach dem SammelnSTART1Offene Bilder holen · httpRequest · Station 2: Neue Bilder findenOffene Bilder holenHTTP2Pruefen · code · Station 2: Neue Bilder findenPruefenCODE2Gibt es Bilder? · if · Station 2: Neue Bilder findenGibt es Bilder?WEICHE2Bild holen · httpRequest · Station 3: Bilder sichernBild holenHTTP3Bild ablegen · httpRequest · Station 3: Bilder sichernBild ablegenHTTP3Adresse merken · httpRequest · Station 4: Neue Adresse merkenAdresse merkenHTTP4Bestand zaehlen · httpRequest · Station 5: NachzählenBestand zaehlenHTTP5Fertigmeldung · code · Station 5: NachzählenFertigmeldungCODE5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Nach dem Sammeln starten

    Der Ablauf startet montags um 6:45 Uhr, kurz nach dem Sammeln.

    In n8n: Nach dem Sammeln

  2. Neue Bilder finden

    Gesucht werden Beiträge, deren Vorschaubild noch bei Instagram liegt. Diese Adressen laufen nach etwa zwei Tagen ab. Ein kleines Programmstück stellt die Liste zusammen.

    In n8n: Offene Bilder holen · Pruefen · Gibt es Bilder?

    WeicheWenn es gibt neue Bilder: Bilder sichern und Adresse merken Sonst: gleich nachzählen und fertig melden

  3. Bilder sichern

    Jedes Bild wird einmal heruntergeladen und dauerhaft im eigenen Speicher abgelegt.

    In n8n: Bild holen · Bild ablegen

  4. Neue Adresse merken

    Beim Beitrag steht jetzt die eigene, dauerhafte Bildadresse. Beim nächsten Mal wird er übersprungen.

    In n8n: Adresse merken

  5. Nachzählen

    Zum Schluss wird gezählt, wie viele Bilder schon gesichert sind und ob noch welche fehlen.

    In n8n: Bestand zaehlen · Fertigmeldung

sb: Benchmark einordnenjeden Montag um 7 Uhr, eine Stunde nach dem Sammeln

Lässt die KI jeden neuen Beitrag nach Thema, Aufhänger und Gefühl einordnen.

Nach dem Sammeln · scheduleTrigger · Station 1: Nach dem Sammeln startenNach dem SammelnSTART1Offene Beitraege holen · httpRequest · Station 2: Neue Beiträge holenOffene BeitraegeholenHTTP2Vorbereiten · code · Station 2: Neue Beiträge holenVorbereitenCODE2Einordnen · chainLlm · Station 3: Von der KI einordnen lassenEinordnenKI3Claude · lmChatAnthropic · Station 3: Von der KI einordnen lassenClaudeKI3Feste Kategorien · outputParserStructured · Station 3: Von der KI einordnen lassenFeste KategorienKI3Zusammenfuehren · code · Station 4: Zusammenführen und prüfenZusammenfuehrenCODE4Einbettungen erzeugen · httpRequest · Station 5: Fingerabdruck erzeugenEinbettungen erzeugenHTTP5Speichern vorbereiten · code · Station 5: Fingerabdruck erzeugenSpeichern vorbereitenCODE5Ergebnis speichern · httpRequest · Station 6: Speichern und nachzählenErgebnis speichernHTTP6Offene zaehlen · httpRequest · Station 6: Speichern und nachzählenOffene zaehlenHTTP6Kontrolle · code · Station 6: Speichern und nachzählenKontrolleCODE6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Nach dem Sammeln starten

    Der Ablauf startet montags um 7 Uhr, eine Stunde nach dem Sammeln.

    In n8n: Nach dem Sammeln

  2. Neue Beiträge holen

    Geholt werden nur Beiträge ohne Einordnung. So geht jeder Beitrag genau einmal zur KI. Das Format (Reel, Karussell, Bild) wird aus den Daten abgelesen, nicht geschätzt.

    In n8n: Offene Beitraege holen · Vorbereiten

  3. Von der KI einordnen lassen

    Die KI (Claude) liest Text und Hashtags und wählt aus festen Listen: Thema, Aufhänger und Gefühl. Dazu schreibt sie einen Satz, worum es geht.

    In n8n: Einordnen · Claude · Feste Kategorien

  4. Zusammenführen und prüfen

    Ein kleines Programmstück ordnet jede KI-Antwort wieder ihrem Beitrag zu und prüft, dass nichts verrutscht ist.

    In n8n: Zusammenfuehren

  5. Fingerabdruck erzeugen

    Ein zweites KI-Modell macht aus jedem Beitrag eine Art Zahlen-Fingerabdruck. Damit findet das Konzept-Studio später Beiträge, die einer neuen Idee ähneln.

    In n8n: Einbettungen erzeugen · Speichern vorbereiten

  6. Speichern und nachzählen

    Die Einordnung kommt in die Datenbank. Danach wird gezählt, wie viele Beiträge schon eingeordnet sind.

    In n8n: Ergebnis speichern · Offene zaehlen · Kontrolle

sb: Benchmark auswertenjeden Montag um 8 Uhr für die Wochenmail, und jederzeit, wenn die App Zahlen anfordert

Rechnet den fairen Vergleich zwischen den Häusern und liefert ihn an die Web-App und als Wochenmail.

janeinWochentakt · scheduleTrigger · Station 1: Zwei Wege hineinWochentaktSTART1Modus Mail · set · Station 1: Zwei Wege hineinModus MailFELD1Dashboard-Anfrage · webhook · Station 1: Zwei Wege hineinDashboard-AnfrageSTART1Modus Dashboard · set · Station 1: Zwei Wege hineinModus DashboardFELD1Beitraege holen · httpRequest · Station 2: Daten holenBeitraege holenHTTP2Accounts holen · httpRequest · Station 2: Daten holenAccounts holenHTTP2Auswerten · code · Station 3: Vergleich rechnenAuswertenCODE3Per Mail? · if · Station 3: Vergleich rechnenPer Mail?WEICHE3Antwort ans Dashboard · respondToWebhook · Station 4: An die App antwortenAntwort ans DashboardANTWORT4Mailtext formulieren · chainLlm · Station 5: Wochenmail schreibenMailtext formulierenKI5Claude Mail · lmChatAnthropic · Station 5: Wochenmail schreibenClaude MailKI5Mail bauen · code · Station 5: Wochenmail schreibenMail bauenCODE5Wochenmail senden · sendInBlue · Station 6: Mail verschickenWochenmail sendenMAIL6Verlauf holen · httpRequest · Station 2: Daten holenVerlauf holenHTTP2Kurzfassung fuer die KI · code · Station 5: Wochenmail schreibenKurzfassung fuer dieKICODE5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Zwei Wege hinein

    Montags um 8 Uhr startet der Ablauf für die Wochenmail. Zusätzlich fragt die Web-App die Zahlen jederzeit ab. Der Ablauf merkt sich, welcher Weg es war.

    In n8n: Wochentakt · Modus Mail · Dashboard-Anfrage · Modus Dashboard

  2. Daten holen

    Alle Beiträge der letzten 30 Tage mit ihrer KI-Einordnung, die Liste der Konten und der Verlauf der Follower-Zahlen kommen aus der Datenbank.

    In n8n: Beitraege holen · Accounts holen · Verlauf holen

  3. Vergleich rechnen

    Ein kleines Programmstück fragt: Wie gut lief ein Beitrag im Vergleich zum üblichen Niveau seines eigenen Kontos? So ist der Vergleich fair, auch zwischen großen und kleinen Häusern. Heraus kommen Ranglisten nach Likes und Kommentaren, bei Reels auch nach Aufrufen, dazu der Follower-Zuwachs.

    In n8n: Auswerten · Per Mail?

    WeicheWenn der Ablauf lief montags für die Wochenmail: Wochenmail schreiben und verschicken Sonst: Zahlen sofort an die App zurückgeben

  4. An die App antworten

    Kam die Anfrage von der Web-App, gehen die fertigen Zahlen sofort zurück. Die App rechnet selbst nichts, sie zeigt nur an.

    In n8n: Antwort ans Dashboard

  5. Wochenmail schreiben

    Die wichtigsten Zahlen werden kurz zusammengefasst. Die KI (Claude) schreibt daraus ein paar sachliche Sätze zur Woche, ohne selbst zu rechnen. Dann wird die Mail im Erscheinungsbild des Hauses gestaltet.

    In n8n: Kurzfassung fuer die KI · Mailtext formulieren · Claude Mail · Mail bauen

  6. Mail verschicken

    Die Wochenmail geht an Sheilas Postfach. Am Mittwoch wurde sie zum ersten Mal verschickt.

    In n8n: Wochenmail senden

sb: Konzept pruefenwenn jemand im Konzept-Studio der App eine Idee prüfen lässt

Nimmt eine Beitragsidee aus dem Konzept-Studio, sucht die fünf ähnlichsten echten Beiträge und lässt die KI eine ehrliche Einschätzung schreiben.

Anfrage · webhook · Station 1: Idee annehmenAnfrageSTART1Idee pruefen · code · Station 1: Idee annehmenIdee pruefenCODE1Einbettung erzeugen · httpRequest · Station 2: Fingerabdruck der IdeeEinbettung erzeugenHTTP2Aehnliche finden · httpRequest · Station 3: Ähnliche Beiträge findenAehnliche findenHTTP3Accounts holen · httpRequest · Station 3: Ähnliche Beiträge findenAccounts holenHTTP3Treffer aufbereiten · code · Station 4: Treffer aufbereitenTreffer aufbereitenCODE4Einordnung formulieren · chainLlm · Station 5: Einschätzung schreibenEinordnungformulierenKI5Claude Konzept · lmChatAnthropic · Station 5: Einschätzung schreibenClaude KonzeptKI5Antwort bauen · code · Station 6: Antwort an die AppAntwort bauenCODE6Antwort · respondToWebhook · Station 6: Antwort an die AppAntwortANTWORT6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Idee annehmen

    Die Beschreibung der Idee kommt aus der App. Ein kleines Programmstück prüft, dass sie weder zu kurz noch zu lang ist.

    In n8n: Anfrage · Idee pruefen

  2. Fingerabdruck der Idee

    Die Idee bekommt denselben Zahlen-Fingerabdruck wie die gespeicherten Beiträge. Nur so lassen sich Idee und Beiträge vergleichen.

    In n8n: Einbettung erzeugen

  3. Ähnliche Beiträge finden

    Die Datenbank sucht die fünf Beiträge, die der Idee am ähnlichsten sind, auch wenn sie andere Wörter verwenden. Dazu kommen die Namen der Häuser.

    In n8n: Aehnliche finden · Accounts holen

  4. Treffer aufbereiten

    Ein kleines Programmstück stellt die echten Zahlen der Treffer zusammen und bildet daraus eine Spanne. Beiträge, die weit über die eigenen Follower hinaus ausgespielt wurden, zählen dabei nicht mit, weil sie mit einem Museum nicht vergleichbar sind.

    In n8n: Treffer aufbereiten

  5. Einschätzung schreiben

    Die KI (Claude) schreibt höchstens sechs Sätze: Was haben die ähnlichen Beiträge gemeinsam, und welche zwei Änderungen an der Idee legen die Zahlen nahe? Werte nennt sie seit dem 24.09. als Likes und Kommentare je 1.000 Follower. Eine Prognosezahl nennt sie bewusst nicht.

    In n8n: Einordnung formulieren · Claude Konzept

  6. Antwort an die App

    Einschätzung, Spanne und die fünf Treffer mit Bild und echten Zahlen gehen zurück ins Konzept-Studio.

    In n8n: Antwort bauen · Antwort

Das klappt schon
  • Die ganze Mediaplanung läuft seit dem 24.09. über NocoDB: Material melden, Reporting-Datei hochladen und Endauswertung haben dort erfolgreich geschrieben, das Dashboard liest von dort. Die Endauswertung für das Frühlingsfest liegt jetzt in NocoDB, mit der Veranstaltung verknüpft.
  • Die Zählprobe wirkt: Als das Dashboard die Aufgaben versehentlich 27-mal las, brach es mit einer klaren Meldung ab, statt jede Aufgabe mehrfach zu zeigen. Nach der Korrektur zeigt es 27 Schaltungen und 18 Aufgaben.
  • Falsche Eingaben werden sauber abgefangen: eine unbekannte Nummer, eine unbekannte Veranstaltung, eine Textdatei statt eines Reportings, eine leere Datei und ein Versuch, die Suche mit Sonderzeichen zu verbiegen: Der Ablauf hielt jeweils an oder zeigte einen Hinweis, gespeichert wurde nichts.
  • Der Fristen-Wächter ist am 24.09. um 8 Uhr zum ersten Mal ganz von selbst gelaufen, ohne Fehler. Nach dem Umzug liest er alle 27 Schaltungen aus NocoDB, findet die fälligen Punkte und merkt sich dort, woran er erinnert hat.
  • Beim Instagram-Vergleich holt die Web-App ihre Zahlen weiter erfolgreich ab (229 Beiträge aus 14 Konten der letzten 30 Tage), die Wochenmail ist am Mittwoch zum ersten Mal verschickt worden, und das Konzept-Studio hat am 24.09. eine Idee zu Sisis Fächer mit ähnlichen echten Beiträgen verglichen, ohne eine Prognose zu raten.
Nächster Schritt
  • Die Summenprüfung ins Reporting einbauen: Der Ablauf zählt die Tageszeilen selbst zusammen und warnt, wenn die Summenzeile abweicht. Dazu je ein echtes Excel- und PDF-Reporting durchspielen.
  • Den fertigen Bericht der Endauswertung mit Diagrammen und Vorschlägen auf der Abschlussseite zeigen oder als Datei mitgeben, damit er auch jemanden erreicht.
  • Das Material-Formular mit demselben Login schützen wie die anderen Formulare, und im Fristen-Wächter die Erinnerung erst nach dem Mailversand als erledigt merken.
  • Mit dem Trainer klären, wo die NocoDB-Datenbank dauerhaft liegt und wer Zugang hat, bevor echte Kontaktdaten hineinkommen. Die alten Tabellen in n8n stehen lassen und im README erklären, dass sie nicht mehr benutzt werden.
  • Mit dem Trainer klären, wie es mit den Vorschaubildern fremder Häuser und den Zeitplänen nach dem Bootcamp weitergeht, und das Ergebnis im README festhalten.

Gut zu wissen:Sheila lässt jeden Mediaplan-Ablauf erst zählen und dann lesen: Stimmen die beiden Zahlen nicht überein, bricht er ab, statt mit einem halben Stand weiterzuarbeiten. Am 24.09. hat genau diese Probe einen Fehler im Dashboard sofort sichtbar gemacht, der sonst jede Aufgabe 27-mal auf die Seite gebracht hätte. Ein grüner Lauf allein ist eben noch kein Beweis; das lohnt sich überall, wo Daten aus einer Tabelle außerhalb von n8n kommen.

Claudia Ritzenhoff · Wagrain-Kleinarl Tourismus

Lücken aus dem Quality Report schließen

am letzten Tag dazugekommenAm 24.09. ist eine Morgenmail dazugekommen: Jeden Werktag um 8 Uhr bekommt Claudia eine Liste der neuen Rechnungen, die zu bezahlen sind. Außerdem schlägt der Rechnungsweg jetzt einen passenden Budgettopf vor, ordnet jede Rechnung dem Tourismusverband oder der DMO zu und kann die Budgets aus Claudias Excel-Liste übernehmen. Und Claudias App ist jetzt auch online erreichbar, geschützt mit einem Zugangscode.

Vorhaben 1Lücken aus dem Quality Report schließen

Einmal im Quartal schickt die Landesorganisation den Quality Report als Excel-Datei. Er zeigt, wo bei Betrieben, Sehenswürdigkeiten und Veranstaltungen Angaben fehlen, etwa Telefon, Website oder Öffnungszeiten. Claudia lädt die Datei in ihrer eigenen App hoch, ihre Lösung sucht die fehlenden Angaben bei Google und auf der Website des Betriebs und macht daraus eine übersichtliche Arbeitsliste. Die KI übernimmt dabei nur, was wörtlich auf der Seite steht.

So sieht das Ergebnis aus
Die Arbeitsliste in ihrer veröffentlichten App
am letzten Tag dazugekommenDie Arbeitsliste in ihrer veröffentlichten AppSeit dem 24.09. online, mit Zugangscode geschützt. Ein Eintrag nach dem anderen: was laut Quality Report fehlt, was auf der Website des Betriebs und bei Google steht, und darunter die Knöpfe zum Abhaken, Nachfragen oder Zurückstellen. Telefonnummer und Mailadresse des Betriebs sind für diese Seite ersetzt.
Der Fortschritt von Quartal zu Quartal
am letzten Tag dazugekommenDer Fortschritt von Quartal zu QuartalWie viele Beanstandungen der Staymate Quality Report zeigt, je Gemeinde, je Bereich und nach Art. Ab dem zweiten Report zeigt die Seite auch, was verschwunden ist und was ihr selbst in Feratel geändert habt.
So spielen die Teile zusammen

Alle drei Teile arbeiten an derselben Arbeitsliste und werden aus Claudias App bedient: Der erste füllt die Liste aus dem Quality Report, der zweite ergänzt fehlende Angaben aus Google und von der Website, der dritte bringt die Liste in die App und nimmt Claudias Bearbeitung entgegen.

  • Claudia: Report einlesenfüllt die Arbeitsliste jedes Quartal
  • Claudia: Luecken recherchierensucht fehlende Angaben im Netz
  • Claudia: Arbeitslistebringt die Liste in die App
  • Claudia: Report einlesenClaudia: Luecken recherchierenlegt offene Einträge an
  • Claudia: Luecken recherchierenClaudia: Arbeitslisteträgt Fundstücke in Liste
  • Claudia: Report einlesenClaudia: Arbeitslisteliefert die Quartals-Bilanz
Claudia: Report einlesenwenn Claudia die Quartalsdatei in ihrer App hochlädt (zur Not über ein kleines Formular)

Liest den Quality Report ein und macht daraus eine Arbeitsliste mit allen Einträgen, bei denen Angaben fehlen.

123janeinFormular: Quartalsdatei hochladen · formTrigger · Station 1: Report hochladenFormular:Quartalsdatei hochla…START1POI lesen · extractFromFile · Station 2: Drei Tabellenblätter lesenPOI lesenFELD2Gastro lesen · extractFromFile · Station 2: Drei Tabellenblätter lesenGastro lesenFELD2Event lesen · extractFromFile · Station 2: Drei Tabellenblätter lesenEvent lesenFELD2Art: POI · set · Station 2: Drei Tabellenblätter lesenArt: POIFELD2Art: Gastro · set · Station 2: Drei Tabellenblätter lesenArt: GastroFELD2Art: Event · set · Station 2: Drei Tabellenblätter lesenArt: EventFELD2Blaetter zusammenfuehren · merge · Station 2: Drei Tabellenblätter lesenBlaetterzusammenfuehrenLISTE2Luecken bestimmen · code · Station 3: Lücken herausfilternLuecken bestimmenCODE3Neue Zeilen anlegen · dataTable · Station 5: Arbeitsliste fortschreibenNeue Zeilen anlegenDATEN5Bekannte Zeilen aktualisieren · dataTable · Station 5: Arbeitsliste fortschreibenBekannte ZeilenaktualisierenDATEN5Ergebnis buendeln · merge · Station 5: Arbeitsliste fortschreibenErgebnis buendelnLISTE5Zusammenfassung · code · Station 6: Bilanz festhalten und zurückmeldenZusammenfassungCODE6Bestand lesen · dataTable · Station 4: Mit dem Bestand vergleichenBestand lesenDATEN4Neu oder bekannt? · code · Station 4: Mit dem Bestand vergleichenNeu oder bekannt?CODE4Was ist zu tun? · switch · Station 4: Mit dem Bestand vergleichenWas ist zu tun?WEICHE4Als geloest markieren · dataTable · Station 5: Arbeitsliste fortschreibenAls geloest markierenDATEN5Momentaufnahme sichern · dataTable · Station 6: Bilanz festhalten und zurückmeldenMomentaufnahmesichernDATEN6Webhook: Report aus der App · webhook · Station 1: Report hochladenWebhook: Report ausder AppSTART1Eingang vereinheitlichen · code · Station 1: Report hochladenEingangvereinheitlichenCODE1Neues Quartal? · if · Station 6: Bilanz festhalten und zurückmeldenNeues Quartal?WEICHE6Ergebnis fuer die App · set · Station 6: Bilanz festhalten und zurückmeldenErgebnis fuer die AppFELD6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Report hochladen

    Claudia lädt den Quality Report direkt in ihrer App hoch, als Reserve gibt es ein kleines Formular. Ein kleines Programmstück bringt beide Wege auf dieselbe Form und lässt nur Excel-Dateien durch.

    In n8n: Webhook: Report aus der App · Formular: Quartalsdatei hochladen · Eingang vereinheitlichen

  2. Drei Tabellenblätter lesen

    Sehenswertes, Gastronomie und Veranstaltungen stehen auf eigenen Blättern. Jedes Blatt wird einzeln gelesen und bekommt ein Etikett. Danach liegt alles in einer gemeinsamen Liste.

    In n8n: POI lesen · Gastro lesen · Event lesen · Art: POI · Art: Gastro · Art: Event · Blaetter zusammenfuehren

  3. Lücken herausfiltern

    Ein kleines Programmstück behält nur die fünf Orte und nur Einträge, bei denen wirklich etwas fehlt. Es erkennt das Quartal am Dateinamen und hält an, wenn ein Blatt leer ankommt.

    In n8n: Luecken bestimmen

  4. Mit dem Bestand vergleichen

    Die bisherige Arbeitsliste wird gelesen. Jeder Eintrag ist entweder neu, schon bekannt oder steht nicht mehr im Report. Dann ist die Lücke behoben.

    In n8n: Bestand lesen · Neu oder bekannt? · Was ist zu tun?

    WeicheWenn der Eintrag neu im Report ist: wird er neu in die Arbeitsliste aufgenommen Sonst: bekannte Einträge werden aufgefrischt, verschwundene als gelöst markiert

  5. Arbeitsliste fortschreiben

    Neue Einträge kommen dazu. Bekannte behalten ihren Bearbeitungsstand und Claudias Notizen. Behobene werden als gelöst markiert statt gelöscht, damit der Erfolg sichtbar bleibt.

    In n8n: Neue Zeilen anlegen · Bekannte Zeilen aktualisieren · Als geloest markieren · Ergebnis buendeln

  6. Bilanz festhalten und zurückmelden

    Gezählt wird je Ort, Art und fehlender Angabe. Beim ersten Upload eines Reports wird diese Momentaufnahme gespeichert, so sieht man von Quartal zu Quartal, wie die Lücken weniger werden. Die Zusammenfassung geht gleich an die App zurück.

    In n8n: Zusammenfassung · Neues Quartal? · Momentaufnahme sichern · Ergebnis fuer die App

    WeicheWenn der Report zum ersten Mal eingelesen wird: wird die Quartals-Bilanz gespeichert Sonst: bleibt die Bilanz vom ersten Mal stehen, die App bekommt trotzdem die Zusammenfassung

Claudia: Luecken recherchierenwenn Claudia in ihrer App die Recherche startet

Sucht für offene Einträge die fehlenden Angaben bei Google und auf der Website des Betriebs und prüft beide Quellen gegeneinander.

janeinjaneinjaneinWebhook: Recherche starten · webhook · Station 1: Auftrag entgegennehmenWebhook: RecherchestartenSTART1Einstellungen · set · Station 1: Auftrag entgegennehmenEinstellungenFELD1Offene Eintraege lesen · dataTable · Station 2: Offene Einträge auswählenOffene EintraegelesenDATEN2Nur recherchierbare · code · Station 2: Offene Einträge auswählenNur recherchierbareCODE2Etwas zu tun? · if · Station 2: Offene Einträge auswählenEtwas zu tun?WEICHE2Google-Eintrag abfragen · httpRequest · Station 3: Bei Google nachschlagenGoogle-EintragabfragenHTTP3Google-Antwort auswerten · code · Station 3: Bei Google nachschlagenGoogle-AntwortauswertenCODE3Ergebnis speichern · dataTable · Station 4: Ergebnis eintragenErgebnis speichernDATEN4Bericht bauen · code · Station 7: Kurzbericht zurückschickenBericht bauenCODE7Antwort senden · respondToWebhook · Station 7: Kurzbericht zurückschickenAntwort sendenANTWORT7Nichts offen · set · Station 2: Offene Einträge auswählenNichts offenFELD2Abfrage geklappt? · if · Station 3: Bei Google nachschlagenAbfrage geklappt?WEICHE3Fehler vermerken · dataTable · Station 4: Ergebnis eintragenFehler vermerkenDATEN4Website vorhanden? · if · Station 4: Ergebnis eintragenWebsite vorhanden?WEICHE4Startseite bestimmen · code · Station 5: Website des Betriebs lesenStartseite bestimmenCODE5Startseite holen · httpRequest · Station 5: Website des Betriebs lesenStartseite holenHTTP5Text buendeln · code · Station 5: Website des Betriebs lesenText buendelnCODE5KI liest Kontaktdaten · chainLlm · Station 6: KI liest, dann AbgleichKI liest KontaktdatenKI6Claude Haiku · lmChatAnthropic · Station 6: KI liest, dann AbgleichClaude HaikuKI6Abgleich beider Quellen · code · Station 6: KI liest, dann AbgleichAbgleich beiderQuellenCODE6Website-Ergebnis speichern · dataTable · Station 6: KI liest, dann AbgleichWebsite-ErgebnisspeichernDATEN6Stufe 2 buendeln · merge · Station 7: Kurzbericht zurückschickenStufe 2 buendelnLISTE7Unterseiten finden · code · Station 5: Website des Betriebs lesenUnterseiten findenCODE5Unterseiten holen · httpRequest · Station 5: Website des Betriebs lesenUnterseiten holenHTTP5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag entgegennehmen

    Claudia sagt, wie viele Einträge recherchiert werden sollen und auf Wunsch für welchen Ort. Mehr als 25 auf einmal gehen nicht, das hält die Kosten im Griff. Auf Wunsch wird ein schon recherchierter Eintrag noch einmal nachgeschlagen.

    In n8n: Webhook: Recherche starten · Einstellungen

  2. Offene Einträge auswählen

    Ein kleines Programmstück nimmt nur Einträge, deren Lücke sich im Netz füllen lässt, etwa Telefon, Website, E-Mail, Adresse oder Öffnungszeiten. Neu sind auch abgelaufene Zeiten und fehlende Enddaten dabei. Ist nichts offen, kommt gleich eine kurze Antwort zurück.

    In n8n: Offene Eintraege lesen · Nur recherchierbare · Etwas zu tun? · Nichts offen

  3. Bei Google nachschlagen

    Ein Suchdienst liefert den Google-Eintrag mit Telefon, Adresse, Website und Öffnungszeiten. Dabei wird sauber unterschieden: gefunden, wirklich nicht vorhanden oder die Abfrage kam gerade nicht durch.

    In n8n: Google-Eintrag abfragen · Google-Antwort auswerten · Abfrage geklappt?

    WeicheWenn ein Google-Eintrag gefunden wurde: werden die Angaben gespeichert und es geht weiter Sonst: wird nur ein Hinweis vermerkt, frühere Werte bleiben stehen

  4. Ergebnis eintragen

    Treffer kommen in die Arbeitsliste. Findet Google diesmal nichts, bleibt der bisherige Stand erhalten und der Eintrag bekommt einen Hinweis. Schon Gefundenes wird dabei nie gelöscht.

    In n8n: Ergebnis speichern · Fehler vermerken · Website vorhanden?

    WeicheWenn der Google-Eintrag eine Website nennt: wird die Website gelesen und abgeglichen Sonst: geht es direkt zum Kurzbericht

  5. Website des Betriebs lesen

    Nennt Google eine Website, wird die Startseite gelesen und den Menü-Links zu Kontakt, Öffnungszeiten, Impressum oder Saison gefolgt, höchstens vier Unterseiten. Ist die Adresse nur ein Verzeichnis, bleibt es bei dieser einen Seite. Das kostet nichts, übrig bleibt reiner Text.

    In n8n: Startseite bestimmen · Startseite holen · Unterseiten finden · Unterseiten holen · Text buendeln

  6. KI liest, dann Abgleich

    Die KI (Claude) liest den Seitentext und übernimmt nur, was dort wörtlich steht. Fehlt etwas, bleibt das Feld leer. Danach werden Telefon und Adresse mit Google verglichen: bestätigt, Abweichung oder nicht prüfbar.

    In n8n: KI liest Kontaktdaten · Claude Haiku · Abgleich beider Quellen · Website-Ergebnis speichern

  7. Kurzbericht zurückschicken

    Zum Schluss wird gezählt, wie viel gefunden wurde und wie viele Seiten gelesen wurden, und die Kosten werden geschätzt. Diese Übersicht geht an die App zurück.

    In n8n: Stufe 2 buendeln · Bericht bauen · Antwort senden

Claudia: Arbeitslistewenn die App die Liste oder den Verlauf abruft oder Claudia einen Eintrag bearbeitet

Verbindet die Arbeitsliste mit Claudias App: Liste abrufen, Einträge bearbeiten und den Fortschritt über die Quartale sehen.

janeinWebhook: Liste holen · webhook · Station 1: App fragt die Liste abWebhook: Liste holenSTART1Filter lesen · set · Station 1: App fragt die Liste abFilter lesenFELD1Alle Zeilen holen · dataTable · Station 2: In Arbeitskörbe sortierenAlle Zeilen holenDATEN2Liste aufbereiten · code · Station 2: In Arbeitskörbe sortierenListe aufbereitenCODE2Liste senden · respondToWebhook · Station 2: In Arbeitskörbe sortierenListe sendenANTWORT2Webhook: Status setzen · webhook · Station 3: Bearbeitung annehmenWebhook: StatussetzenSTART3Eingabe pruefen · code · Station 3: Bearbeitung annehmenEingabe pruefenCODE3Status schreiben · dataTable · Station 4: Speichern und bestätigenStatus schreibenDATEN4Bestaetigung bauen · code · Station 4: Speichern und bestätigenBestaetigung bauenCODE4Bestaetigung senden · respondToWebhook · Station 4: Speichern und bestätigenBestaetigung sendenANTWORT4Eingabe in Ordnung? · if · Station 3: Bearbeitung annehmenEingabe in Ordnung?WEICHE3Fehlermeldung bauen · set · Station 3: Bearbeitung annehmenFehlermeldung bauenFELD3Webhook: Verlauf holen · webhook · Station 5: Fortschritt je Quartal zeigenWebhook: VerlaufholenSTART5Verlauf lesen · dataTable · Station 5: Fortschritt je Quartal zeigenVerlauf lesenDATEN5Verlauf aufbereiten · code · Station 5: Fortschritt je Quartal zeigenVerlauf aufbereitenCODE5Verlauf senden · respondToWebhook · Station 5: Fortschritt je Quartal zeigenVerlauf sendenANTWORT5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. App fragt die Liste ab

    Die App bittet um die Arbeitsliste. Auf Wunsch nur für einen Ort, eine Art, einen Stand oder ein Suchwort.

    In n8n: Webhook: Liste holen · Filter lesen

  2. In Arbeitskörbe sortieren

    Ein kleines Programmstück legt jeden Eintrag in einen Korb: zu erledigen, wartet auf Antwort, zurückgestellt, erledigt oder Vorrat. Alles, was schon recherchiert ist, steht unter „zu erledigen“, fällige Wiedervorlagen stehen oben.

    In n8n: Alle Zeilen holen · Liste aufbereiten · Liste senden

  3. Bearbeitung annehmen

    Bearbeitet Claudia einen Eintrag, etwa Stand, Notiz, Wiedervorlage oder selbst ergänzte Angaben, wird die Eingabe zuerst geprüft. Stimmt etwas nicht, bekommt sie eine verständliche Meldung.

    In n8n: Webhook: Status setzen · Eingabe pruefen · Eingabe in Ordnung? · Fehlermeldung bauen

    WeicheWenn die Eingabe in Ordnung ist: wird gespeichert und bestätigt Sonst: kommt ein verständlicher Hinweis zurück

  4. Speichern und bestätigen

    Die Änderung wird in die Liste geschrieben. Die App erfährt, ob der Eintrag wirklich gefunden und geändert wurde.

    In n8n: Status schreiben · Bestaetigung bauen · Bestaetigung senden

  5. Fortschritt je Quartal zeigen

    Die App holt die gespeicherten Quartals-Bilanzen. So wird sichtbar, ob die Lücken von Quartal zu Quartal weniger werden.

    In n8n: Webhook: Verlauf holen · Verlauf lesen · Verlauf aufbereiten · Verlauf senden

Vorhaben 2Rechnungen einreichen, prüfen und ablegen

Kolleginnen und Kollegen reichen Rechnungen ein, die geprüft, einem Budgettopf zugeordnet, gestempelt und abgelegt werden müssen. In Claudias App lädt man die Rechnung als PDF hoch, die KI liest Rechnungssteller, Nummer, Datum und Beträge heraus und schlägt einen Budgettopf vor, und man ergänzt den Zweck und ob die Rechnung zum Tourismusverband oder zur DMO gehört. Claudia sieht alle Rechnungen mit ihrem Stand und wie viel in jedem Budgettopf noch frei ist, und jeden Werktag um 8 Uhr bekommt sie eine Mail mit den neuen Rechnungen, die zu bezahlen sind. Ein kleines Programm auf ihrem Rechner stempelt die Rechnungen, trägt sie in die Excel-Liste ein, legt sie im passenden Ordner ab und meldet die Budgets aus ihrer Excel-Liste zurück.

So spielen die Teile zusammen

Die vier Teile arbeiten mit derselben Rechnungsliste: Der erste nimmt neue Rechnungen an, der zweite zeigt Claudia Liste und Budgetstand, der dritte arbeitet mit dem Ordner-Programm auf ihrem Rechner zusammen, und der vierte schickt ihr morgens die Rechnungen, die zu bezahlen sind.

  • Claudia: Rechnung erfassenliest und speichert neue Rechnungen
  • Claudia: Rechnungslistezeigt Stand und Budget
  • Claudia: Rechnungen ablegenübergibt ans Ordner-Programm
  • Claudia: Rechnungen Morgenmailmeldet neue Rechnungen morgens
  • Claudia: Rechnung erfassenClaudia: Rechnungslisteneue Rechnungen mit Budgetanteilen
  • Claudia: RechnungslisteClaudia: Rechnung erfassenNamen und Töpfe fürs Einreichen
  • Claudia: Rechnung erfassenClaudia: Rechnungen ablegenPDF im Zwischenlager
  • Claudia: Rechnungen ablegenClaudia: RechnungslisteStand „Fertig“ und Budgets
  • Claudia: Rechnung erfassenClaudia: Rechnungen Morgenmailneue Rechnungen zum Bezahlen
Claudia: Rechnung erfassenwenn jemand in der App eine Rechnung hochlädt oder einreicht

Liest eine hochgeladene Rechnung mit der KI vor, schlägt Budgettopf und Tourismusverband oder DMO vor und speichert sie, sobald alles feststeht.

janeinjaneinjaneinWebhook: Rechnung lesen · webhook · Station 1: PDF annehmenWebhook: RechnunglesenSTART1Datei pruefen · code · Station 1: PDF annehmenDatei pruefenCODE1Datei in Ordnung? · if · Station 1: PDF annehmenDatei in Ordnung?WEICHE1Text in Datei umwandeln · convertToFile · Station 2: Text aus dem PDF holenText in DateiumwandelnFELD2Text aus PDF lesen · extractFromFile · Station 2: Text aus dem PDF holenText aus PDF lesenFELD2Budgettoepfe fuer KI lesen · dataTable · Station 2: Text aus dem PDF holenBudgettoepfe fuer KIlesenDATEN2Text pruefen · code · Station 2: Text aus dem PDF holenText pruefenCODE2Text vorhanden? · if · Station 2: Text aus dem PDF holenText vorhanden?WEICHE2KI liest Rechnung · chainLlm · Station 3: KI liest die RechnungKI liest RechnungKI3Claude Haiku · lmChatAnthropic · Station 3: KI liest die RechnungClaude HaikuKI3Werte aufbereiten · code · Station 3: KI liest die RechnungWerte aufbereitenCODE3Gleiche Nummer? · dataTable · Station 4: Vorschau mit Doppel-Check und VorschlagGleiche Nummer?DATEN4Gleicher Betrag am selben Tag? · dataTable · Station 4: Vorschau mit Doppel-Check und VorschlagGleicher Betrag amselben Tag?DATEN4Bisherige Rechnungen lesen · dataTable · Station 4: Vorschau mit Doppel-Check und VorschlagBisherige RechnungenlesenDATEN4Bisherige Posten lesen · dataTable · Station 4: Vorschau mit Doppel-Check und VorschlagBisherige PostenlesenDATEN4Ergebnis bauen · code · Station 4: Vorschau mit Doppel-Check und VorschlagErgebnis bauenCODE4Gelesene Werte senden · respondToWebhook · Station 4: Vorschau mit Doppel-Check und VorschlagGelesene Werte sendenANTWORT4Datei-Fehler senden · respondToWebhook · Station 1: PDF annehmenDatei-Fehler sendenANTWORT1Webhook: Rechnung einreichen · webhook · Station 5: Einreichung prüfenWebhook: RechnungeinreichenSTART5Personen lesen · dataTable · Station 5: Einreichung prüfenPersonen lesenDATEN5Budgettoepfe lesen · dataTable · Station 5: Einreichung prüfenBudgettoepfe lesenDATEN5Einreichung pruefen · code · Station 5: Einreichung prüfenEinreichung pruefenCODE5Einreichung in Ordnung? · if · Station 5: Einreichung prüfenEinreichung inOrdnung?WEICHE5Schon eingereicht? (Nummer) · dataTable · Station 6: Doppelte erkennenSchon eingereicht?(Nummer)DATEN6Schon eingereicht? (Betrag) · dataTable · Station 6: Doppelte erkennenSchon eingereicht?(Betrag)DATEN6Status festlegen · code · Station 6: Doppelte erkennenStatus festlegenCODE6Datei herausnehmen · code · Station 7: Sicher speichernDatei herausnehmenCODE7Datei zwischenlagern · dataTable · Station 7: Sicher speichernDatei zwischenlagernDATEN7Rechnung herausnehmen · code · Station 7: Sicher speichernRechnung herausnehmenCODE7Rechnung speichern · dataTable · Station 7: Sicher speichernRechnung speichernDATEN7Posten herausnehmen · code · Station 7: Sicher speichernPosten herausnehmenCODE7Posten speichern · dataTable · Station 7: Sicher speichernPosten speichernDATEN7Protokoll schreiben · code · Station 7: Sicher speichernProtokoll schreibenCODE7Protokoll speichern · dataTable · Station 7: Sicher speichernProtokoll speichernDATEN7Antwort bauen · code · Station 7: Sicher speichernAntwort bauenCODE7Einreichung bestaetigen · respondToWebhook · Station 7: Sicher speichernEinreichungbestaetigenANTWORT7Neue Namen herausnehmen · code · Station 8: Neue Namen und Töpfe merkenNeue NamenherausnehmenCODE8Neue Namen speichern · dataTable · Station 8: Neue Namen und Töpfe merkenNeue Namen speichernDATEN8Neue Toepfe herausnehmen · code · Station 8: Neue Namen und Töpfe merkenNeue ToepfeherausnehmenCODE8Neue Toepfe speichern · dataTable · Station 8: Neue Namen und Töpfe merkenNeue Toepfe speichernDATEN8Einreichungs-Fehler senden · respondToWebhook · Station 5: Einreichung prüfenEinreichungs-FehlersendenANTWORT5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. PDF annehmen

    Jemand lädt in der App eine Rechnung hoch. Ist es kein PDF oder größer als 8 MB, kommt sofort eine verständliche Meldung zurück.

    In n8n: Webhook: Rechnung lesen · Datei pruefen · Datei in Ordnung? · Datei-Fehler senden

    WeicheWenn wirklich ein PDF in passender Größe ankommt: wird der Text herausgeholt Sonst: kommt sofort eine verständliche Meldung zurück

  2. Text aus dem PDF holen

    Aus dem PDF wird der Text gelesen, dazu die Liste der Budgettöpfe mit ihren Beschreibungen. Ein eingescanntes PDF hat keinen Text: Dann wird die KI übersprungen, und man tippt die Werte auf der Seite selbst ab.

    In n8n: Text in Datei umwandeln · Text aus PDF lesen · Budgettoepfe fuer KI lesen · Text pruefen · Text vorhanden?

    WeicheWenn das PDF lesbaren Text enthält: liest die KI die Rechnung Sonst: wird die KI übersprungen und die Werte werden von Hand abgetippt

  3. KI liest die Rechnung

    Die KI (Claude) liest Rechnungssteller, Nummer, Datum, Beträge, Steuersatz und an wen die Rechnung adressiert ist. Sie schlägt einen Verwendungszweck vor und wählt aus der Liste den Budgettopf, der nach seiner Beschreibung am besten passt, erfinden darf sie keinen. Ein kleines Programmstück prüft nach: Steht der Betrag wirklich so auf der Rechnung, und ergeben netto plus Steuer den Gesamtbetrag?

    In n8n: KI liest Rechnung · Claude Haiku · Werte aufbereiten

  4. Vorschau mit Doppel-Check und Vorschlag

    Schon beim Hochladen wird nachgesehen, ob es dieselbe Rechnung schon gibt. Dazu kommt ein Gedächtnis: Budgettopf und Tourismusverband oder DMO werden so vorgeschlagen, wie sie beim selben Rechnungssteller meistens gewählt wurden, sonst gilt der Vorschlag der KI. Die App zeigt alles an, gespeichert wird hier noch nichts.

    In n8n: Gleiche Nummer? · Gleicher Betrag am selben Tag? · Bisherige Rechnungen lesen · Bisherige Posten lesen · Ergebnis bauen · Gelesene Werte senden

  5. Einreichung prüfen

    Beim Einreichen kommen Zweck, Name und Budgettopf dazu, eine Rechnung darf auch auf mehrere Töpfe verteilt werden. Bei jedem Topf muss feststehen, ob er zum Tourismusverband oder zur DMO gehört. Stimmt etwas nicht, etwa weil die Anteile nicht genau den Rechnungsbetrag ergeben, kommt eine Meldung und nichts wird gespeichert.

    In n8n: Webhook: Rechnung einreichen · Personen lesen · Budgettoepfe lesen · Einreichung pruefen · Einreichung in Ordnung? · Einreichungs-Fehler senden

    WeicheWenn alle Angaben stimmen: wird die Rechnung gespeichert Sonst: kommt eine verständliche Meldung zurück, nichts wird gespeichert

  6. Doppelte erkennen

    Noch einmal wird nach gleicher Nummer oder gleichem Betrag am selben Tag gesucht. Eine mögliche Doppelung wird trotzdem gespeichert, aber im Stand „Doppelt?“, und Claudia entscheidet.

    In n8n: Schon eingereicht? (Nummer) · Schon eingereicht? (Betrag) · Status festlegen

  7. Sicher speichern

    Gespeichert wird in fester Reihenfolge: erst das PDF in ein Zwischenlager, dann die Rechnung, die Budgetanteile und ein Eintrag im Protokoll. Zum Schluss wird nachgezählt, ob alle Anteile angekommen sind, und die App bekommt eine Bestätigung.

    In n8n: Datei herausnehmen · Datei zwischenlagern · Rechnung herausnehmen · Rechnung speichern · Posten herausnehmen · Posten speichern · Protokoll schreiben · Protokoll speichern · Antwort bauen · Einreichung bestaetigen

  8. Neue Namen und Töpfe merken

    Tippt jemand einen neuen Vornamen oder Budgettopf ein, wird er für alle gemerkt, ein neuer Topf gleich für Tourismusverband und DMO. Ab dann steht er im Auswahlmenü.

    In n8n: Neue Namen herausnehmen · Neue Namen speichern · Neue Toepfe herausnehmen · Neue Toepfe speichern

Claudia: Rechnungslistewenn die App die Rechnungsliste oder die Seite zum Einreichen öffnet oder Claudia eine Rechnung ändert

Zeigt Claudia alle Rechnungen mit ihrem Stand und dem Budgetstand je Topf und nimmt ihre Korrekturen entgegen.

jajajaneinjaneinWebhook: Liste holen · webhook · Station 1: Alles für die Liste lesenWebhook: Liste holenSTART1Rechnungen lesen · dataTable · Station 1: Alles für die Liste lesenRechnungen lesenDATEN1Posten lesen · dataTable · Station 1: Alles für die Liste lesenPosten lesenDATEN1Budget lesen · dataTable · Station 1: Alles für die Liste lesenBudget lesenDATEN1Protokoll lesen · dataTable · Station 1: Alles für die Liste lesenProtokoll lesenDATEN1Liste bauen · code · Station 2: Liste und Budgetstand bauenListe bauenCODE2Liste senden · respondToWebhook · Station 2: Liste und Budgetstand bauenListe sendenANTWORT2Webhook: Formular holen · webhook · Station 3: Auswahl fürs EinreichenWebhook: FormularholenSTART3Namen lesen · dataTable · Station 3: Auswahl fürs EinreichenNamen lesenDATEN3Toepfe lesen · dataTable · Station 3: Auswahl fürs EinreichenToepfe lesenDATEN3Auswahl bauen · code · Station 3: Auswahl fürs EinreichenAuswahl bauenCODE3Auswahl senden · respondToWebhook · Station 3: Auswahl fürs EinreichenAuswahl sendenANTWORT3Webhook: Rechnung aendern · webhook · Station 4: Änderung prüfenWebhook: RechnungaendernSTART4Diese Rechnung lesen · dataTable · Station 4: Änderung prüfenDiese Rechnung lesenDATEN4Ihre Posten lesen · dataTable · Station 4: Änderung prüfenIhre Posten lesenDATEN4Namensliste lesen · dataTable · Station 4: Änderung prüfenNamensliste lesenDATEN4Topfliste lesen · dataTable · Station 4: Änderung prüfenTopfliste lesenDATEN4Aenderung pruefen · code · Station 4: Änderung prüfenAenderung pruefenCODE4Aenderung in Ordnung? · if · Station 4: Änderung prüfenAenderung in Ordnung?WEICHE4Neue Werte herausnehmen · code · Station 6: Rechnung und Aufteilung ändernNeue WerteherausnehmenCODE6Aenderungs-Fehler senden · respondToWebhook · Station 4: Änderung prüfenAenderungs-FehlersendenANTWORT4Neue Namen herausnehmen · code · Station 5: Neue Namen und Töpfe merkenNeue NamenherausnehmenCODE5Neue Namen speichern · dataTable · Station 5: Neue Namen und Töpfe merkenNeue Namen speichernDATEN5Neue Toepfe herausnehmen · code · Station 5: Neue Namen und Töpfe merkenNeue ToepfeherausnehmenCODE5Neue Toepfe speichern · dataTable · Station 5: Neue Namen und Töpfe merkenNeue Toepfe speichernDATEN5Rechnung aktualisieren · dataTable · Station 6: Rechnung und Aufteilung ändernRechnungaktualisierenDATEN6Budgetaufteilung neu? · if · Station 6: Rechnung und Aufteilung ändernBudgetaufteilung neu?WEICHE6Alte Posten entfernen · dataTable · Station 6: Rechnung und Aufteilung ändernAlte Posten entfernenDATEN6Neue Posten herausnehmen · code · Station 6: Rechnung und Aufteilung ändernNeue PostenherausnehmenCODE6Neue Posten speichern · dataTable · Station 6: Rechnung und Aufteilung ändernNeue Posten speichernDATEN6Protokoll vorbereiten · code · Station 7: Protokollieren und bestätigenProtokoll vorbereitenCODE7Aenderung protokollieren · dataTable · Station 7: Protokollieren und bestätigenAenderungprotokollierenDATEN7Bestaetigung bauen · code · Station 7: Protokollieren und bestätigenBestaetigung bauenCODE7Aenderung bestaetigen · respondToWebhook · Station 7: Protokollieren und bestätigenAenderung bestaetigenANTWORT7
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Alles für die Liste lesen

    Claudias Seite „Rechnungen“ fragt an. Gelesen werden alle Rechnungen, ihre Budgetanteile, die Jahresbudgets und das Protokoll.

    In n8n: Webhook: Liste holen · Rechnungen lesen · Posten lesen · Budget lesen · Protokoll lesen

  2. Liste und Budgetstand bauen

    Ein kleines Programmstück ordnet die Rechnungen nach Stand: eingereicht, doppelt, fertig oder zurückgewiesen, jede mit ihrem Verlauf. Für jeden Budgettopf rechnet es aus, wie viel verbraucht, noch offen und frei ist, getrennt für Tourismusverband und DMO und zusammen. Doppelte und zurückgewiesene Rechnungen zählen dabei nicht mit.

    In n8n: Liste bauen · Liste senden

  3. Auswahl fürs Einreichen

    Die Seite „Rechnung einreichen“ bekommt nur die Namen und Budgettöpfe für ihre Auswahlmenüs. Beträge bleiben weg, denn diese Seite sehen alle Kolleginnen und Kollegen.

    In n8n: Webhook: Formular holen · Namen lesen · Toepfe lesen · Auswahl bauen · Auswahl senden

  4. Änderung prüfen

    Claudia korrigiert eine Rechnung, weist sie zurück oder nimmt sie wieder auf. Ein kleines Programmstück prüft, ob das im jeweiligen Stand erlaubt ist und ob bei jedem Budgettopf Tourismusverband oder DMO feststeht. Fertig abgelegte Rechnungen sind gesperrt.

    In n8n: Webhook: Rechnung aendern · Diese Rechnung lesen · Ihre Posten lesen · Namensliste lesen · Topfliste lesen · Aenderung pruefen · Aenderung in Ordnung? · Aenderungs-Fehler senden

    WeicheWenn die Änderung im jeweiligen Stand erlaubt ist: wird sie gespeichert Sonst: kommt eine verständliche Meldung zurück

  5. Neue Namen und Töpfe merken

    Auch bei einer Korrektur kann ein neuer Vorname oder Budgettopf dazukommen. Er wird für alle gespeichert.

    In n8n: Neue Namen herausnehmen · Neue Namen speichern · Neue Toepfe herausnehmen · Neue Toepfe speichern

  6. Rechnung und Aufteilung ändern

    Die Rechnung wird mit den neuen Werten gespeichert. Nur wenn die Budgettöpfe geändert wurden, werden die alten Anteile durch die neuen ersetzt.

    In n8n: Neue Werte herausnehmen · Rechnung aktualisieren · Budgetaufteilung neu? · Alte Posten entfernen · Neue Posten herausnehmen · Neue Posten speichern

    WeicheWenn die Budgettöpfe geändert wurden: werden die alten Anteile durch neue ersetzt Sonst: geht es direkt zum Protokoll

  7. Protokollieren und bestätigen

    Vorher wird nachgesehen, ob wirklich alles gespeichert ist. Dann kommt die Änderung mit „alt → neu“ ins Protokoll, und die App bekommt eine Bestätigung.

    In n8n: Protokoll vorbereiten · Aenderung protokollieren · Bestaetigung bauen · Aenderung bestaetigen

Claudia: Rechnungen ablegenwenn das Ordner-Programm auf Claudias Rechner nach offenen Rechnungen fragt, eine abgelegte Rechnung meldet oder die Budgets aus der Excel-Liste schickt

Arbeitet mit dem Ordner-Programm auf Claudias Rechner zusammen: gibt eingereichte Rechnungen heraus, setzt sie nach dem Ablegen auf „Fertig“ und übernimmt die Budgets aus ihrer Excel-Liste.

janeinjaneinjaneinWebhook: Offene holen · webhook · Station 1: Offene Rechnungen abholenWebhook: Offene holenSTART1Eingereichte lesen · dataTable · Station 1: Offene Rechnungen abholenEingereichte lesenDATEN1Alle Posten lesen · dataTable · Station 1: Offene Rechnungen abholenAlle Posten lesenDATEN1Vermerke bauen · code · Station 2: Ablage vorbereitenVermerke bauenCODE2Offene senden · respondToWebhook · Station 2: Ablage vorbereitenOffene sendenANTWORT2Webhook: Datei holen · webhook · Station 3: PDF herausgebenWebhook: Datei holenSTART3Rechnung dazu lesen · dataTable · Station 3: PDF herausgebenRechnung dazu lesenDATEN3Datei lesen · dataTable · Station 3: PDF herausgebenDatei lesenDATEN3Datei pruefen · code · Station 3: PDF herausgebenDatei pruefenCODE3Datei vorhanden? · if · Station 3: PDF herausgebenDatei vorhanden?WEICHE3Datei senden · respondToWebhook · Station 3: PDF herausgebenDatei sendenANTWORT3Datei-Fehler senden · respondToWebhook · Station 3: PDF herausgebenDatei-Fehler sendenANTWORT3Webhook: Abschluss melden · webhook · Station 4: Abschluss prüfenWebhook: AbschlussmeldenSTART4Abgeschlossene Rechnung lesen · dataTable · Station 4: Abschluss prüfenAbgeschlosseneRechnung lesenDATEN4Abschluss pruefen · code · Station 4: Abschluss prüfenAbschluss pruefenCODE4Abschluss in Ordnung? · if · Station 4: Abschluss prüfenAbschluss in Ordnung?WEICHE4Status-Aenderung herausnehmen · code · Station 5: Auf „Fertig“ setzen und aufräumenStatus-AenderungherausnehmenCODE5Abschluss-Fehler senden · respondToWebhook · Station 4: Abschluss prüfenAbschluss-FehlersendenANTWORT4Auf Fertig setzen · dataTable · Station 5: Auf „Fertig“ setzen und aufräumenAuf Fertig setzenDATEN5Datei aus Zwischenlager loeschen · dataTable · Station 5: Auf „Fertig“ setzen und aufräumenDatei ausZwischenlager loesch…DATEN5Abschluss protokollieren vorbereiten · code · Station 6: Protokollieren und bestätigenAbschlussprotokollieren vorbe…CODE6Abschluss protokollieren · dataTable · Station 6: Protokollieren und bestätigenAbschlussprotokollierenDATEN6Abschluss-Antwort bauen · code · Station 6: Protokollieren und bestätigenAbschluss-AntwortbauenCODE6Abschluss bestaetigen · respondToWebhook · Station 6: Protokollieren und bestätigenAbschluss bestaetigenANTWORT6Webhook: Budget setzen · webhook · Station 7: Budgets aus Excel prüfenWebhook: BudgetsetzenSTART7Budgettoepfe dazu lesen · dataTable · Station 7: Budgets aus Excel prüfenBudgettoepfe dazulesenDATEN7Budget pruefen · code · Station 7: Budgets aus Excel prüfenBudget pruefenCODE7Etwas zu aendern? · if · Station 7: Budgets aus Excel prüfenEtwas zu aendern?WEICHE7Aenderungen herausnehmen · code · Station 8: Budgets übernehmen und protokollierenAenderungenherausnehmenCODE8Nichts zu aendern · code · Station 7: Budgets aus Excel prüfenNichts zu aendernCODE7Budget-Antwort (nichts) · respondToWebhook · Station 7: Budgets aus Excel prüfenBudget-Antwort(nichts)ANTWORT7Budget aktualisieren · dataTable · Station 8: Budgets übernehmen und protokollierenBudget aktualisierenDATEN8Budget protokollieren vorbereiten · code · Station 8: Budgets übernehmen und protokollierenBudget protokollierenvorbereitenCODE8Budget protokollieren · dataTable · Station 8: Budgets übernehmen und protokollierenBudget protokollierenDATEN8Budget-Antwort bauen · code · Station 8: Budgets übernehmen und protokollierenBudget-Antwort bauenCODE8Budget-Antwort · respondToWebhook · Station 8: Budgets übernehmen und protokollierenBudget-AntwortANTWORT8
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Offene Rechnungen abholen

    Das Ordner-Programm auf Claudias Rechner fragt nach allen Rechnungen im Stand „Eingereicht“. Mögliche Doppelungen und zurückgewiesene Rechnungen bleiben liegen, bis Claudia entschieden hat.

    In n8n: Webhook: Offene holen · Eingereichte lesen · Alle Posten lesen

  2. Ablage vorbereiten

    Ein kleines Programmstück schreibt zu jeder Rechnung den Zielordner dazu: das Jahr und den Budgettopf mit dem größten Anteil, für Kreditkartenbelege einen eigenen Ordner. Außerdem rechnet es nach, ob die Budgetanteile den Rechnungsbetrag ergeben.

    In n8n: Vermerke bauen · Offene senden

  3. PDF herausgeben

    Das Programm holt das PDF aus dem Zwischenlager. Es kommt nur heraus, wenn die Datei genau so groß ist wie beim Einreichen, lieber gar nichts als eine halbe Datei.

    In n8n: Webhook: Datei holen · Rechnung dazu lesen · Datei lesen · Datei pruefen · Datei vorhanden? · Datei senden · Datei-Fehler senden

    WeicheWenn die Datei vollständig im Zwischenlager liegt: bekommt das Programm das PDF Sonst: kommt eine Meldung statt einer halben Datei

  4. Abschluss prüfen

    Hat das Programm die Rechnung gestempelt, in die Excel-Liste eingetragen und abgelegt, meldet es sich. Ohne Ablageort oder Excel-Zeile wird die Meldung abgewiesen.

    In n8n: Webhook: Abschluss melden · Abgeschlossene Rechnung lesen · Abschluss pruefen · Abschluss in Ordnung? · Abschluss-Fehler senden

    WeicheWenn Ablageort und Excel-Zeile gemeldet sind: wird die Rechnung auf „Fertig“ gesetzt Sonst: wird die Meldung abgewiesen

  5. Auf „Fertig“ setzen und aufräumen

    Die Rechnung bekommt den Stand „Fertig“ und ist ab dann gesperrt. Das PDF wird aus dem Zwischenlager gelöscht, es liegt jetzt nur noch in Claudias Ablage.

    In n8n: Status-Aenderung herausnehmen · Auf Fertig setzen · Datei aus Zwischenlager loeschen

  6. Protokollieren und bestätigen

    Der Abschluss kommt ins Protokoll, samt Ablageort. Das Programm bekommt eine Bestätigung.

    In n8n: Abschluss protokollieren vorbereiten · Abschluss protokollieren · Abschluss-Antwort bauen · Abschluss bestaetigen

  7. Budgets aus Excel prüfen

    Was Claudia in ihrem Excel-Budgetblatt einträgt, gilt. Das Ordner-Programm schickt Jahresbudget und Übertrag je Topf, und ein kleines Programmstück prüft: Gibt es diesen Topf, und ist es eine Zahl ab 0? Stimmt etwas nicht oder hat sich nichts geändert, kommt gleich eine Antwort zurück.

    In n8n: Webhook: Budget setzen · Budgettoepfe dazu lesen · Budget pruefen · Etwas zu aendern? · Nichts zu aendern · Budget-Antwort (nichts)

    WeicheWenn alle Zahlen gültig sind und sich etwas geändert hat: werden die Budgets übernommen und protokolliert Sonst: kommt eine Antwort zurück, und an den Budgets ändert sich nichts

  8. Budgets übernehmen und protokollieren

    Geänderte Budgets werden in die Budgetliste geschrieben. Jede Änderung kommt mit „alt → neu“ ins Protokoll, und das Programm bekommt eine Bestätigung.

    In n8n: Aenderungen herausnehmen · Budget aktualisieren · Budget protokollieren vorbereiten · Budget protokollieren · Budget-Antwort bauen · Budget-Antwort

Claudia: Rechnungen Morgenmailjeden Werktag um 8 Uhr (zum Ausprobieren auch sofort)

Schickt Claudia jeden Werktag um 8 Uhr eine Mail mit den neuen Rechnungen, die zu bezahlen sind, die dringendste zuerst.

janeinWerktags um 8 Uhr · scheduleTrigger · Station 1: Werktags um 8 Uhr startenWerktags um 8 UhrSTART1Webhook: Jetzt pruefen · webhook · Station 1: Werktags um 8 Uhr startenWebhook: JetztpruefenSTART1Einstellungen · set · Station 1: Werktags um 8 Uhr startenEinstellungenFELD1Zu zahlende lesen · dataTable · Station 2: Rechnungen und Töpfe lesenZu zahlende lesenDATEN2Posten lesen · dataTable · Station 2: Rechnungen und Töpfe lesenPosten lesenDATEN2Schon gemeldet lesen · dataTable · Station 2: Rechnungen und Töpfe lesenSchon gemeldet lesenDATEN2Mail bauen · code · Station 3: Mail zusammenstellenMail bauenCODE3Neue da? · if · Station 3: Mail zusammenstellenNeue da?WEICHE3Mail an Claudia · sendInBlue · Station 4: Mail verschickenMail an ClaudiaMAIL4Nichts Neues: keine Mail · noOp · Station 3: Mail zusammenstellenNichts Neues: keineMailFELD3Als gemeldet vermerken · code · Station 5: Als gemeldet vermerken und nachzählenAls gemeldetvermerkenCODE5Ins Protokoll · dataTable · Station 5: Als gemeldet vermerken und nachzählenIns ProtokollDATEN5Gegenprobe · code · Station 5: Als gemeldet vermerken und nachzählenGegenprobeCODE5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Werktags um 8 Uhr starten

    Jeden Werktag um 8 Uhr schaut der Ablauf nach, zum Ausprobieren lässt er sich auch sofort starten. An wen die Mail geht und von wem, steht an einer einzigen Stelle.

    In n8n: Werktags um 8 Uhr · Webhook: Jetzt pruefen · Einstellungen

  2. Rechnungen und Töpfe lesen

    Gelesen werden alle Rechnungen, die bezahlt werden müssen, ihre Budgettöpfe und im Protokoll, welche Rechnungen schon per Mail gemeldet wurden.

    In n8n: Zu zahlende lesen · Posten lesen · Schon gemeldet lesen

  3. Mail zusammenstellen

    Ein kleines Programmstück nimmt nur Rechnungen, die noch nie gemeldet wurden, ohne Kreditkartenbelege und Gutschriften. Die dringendste steht oben, dazu Summe, Budgettopf und was als Nächstes zu tun ist. Gibt es nichts Neues, kommt an diesem Morgen keine Mail.

    In n8n: Mail bauen · Neue da? · Nichts Neues: keine Mail

    WeicheWenn neue Rechnungen zu bezahlen sind: geht die Mail an Claudia Sonst: kommt an diesem Morgen keine Mail

  4. Mail verschicken

    Die Mail geht über den Mail-Dienst des Bootcamps an Claudia.

    In n8n: Mail an Claudia

  5. Als gemeldet vermerken und nachzählen

    Erst wenn der Mail-Dienst die Mail angenommen hat, kommt jede Rechnung als „per Mail gemeldet“ ins Protokoll. So steht jede Rechnung genau einmal in einer Mail, und keine geht verloren. Zum Schluss wird nachgezählt, ob alle Vermerke angekommen sind.

    In n8n: Als gemeldet vermerken · Ins Protokoll · Gegenprobe

Das klappt schon
  • Der Quality Report lässt sich direkt aus Claudias App hochladen: 1.857 Einträge waren in knapp 40 Sekunden eingelesen und mit der Arbeitsliste abgeglichen, 447 davon mit fehlenden Angaben. Seit dem 24.09. läuft die App auch online und hat Arbeitsliste und Quartalsverlauf von dort abgerufen.
  • Die Recherche folgt auf der Website den Menü-Links, etwa zur Kontaktseite, und in der App liegen 43 Einträge unter „zu erledigen“ bereit, am Dienstag waren es 22. Bei 10 davon bestätigen Google und Website dieselben Angaben.
  • Der Rechnungsweg läuft mit Testrechnungen von Anfang bis Ende: Die KI las Rechnungssteller, Nummer, Datum, Netto, Steuer und Gesamtbetrag richtig vor, die Rechnung wurde mit ihrem Budgettopf gespeichert, und das Ordner-Programm hat eine Rechnung abgelegt und auf „Fertig“ gesetzt.
  • Die Morgenmail hat am 24.09. zum ersten Mal geklappt: Neun Rechnungen kamen in einer Mail bei Claudia an, mit Gesamtsumme, Budgettopf und Stand jeder Rechnung. Beim zweiten Versuch kam richtig keine Mail, weil nichts Neues dazugekommen war.
Nächster Schritt
  • Nach dem Bootcamp mit dem Trainer klären, wie der Rechnungsweg in den Alltag kommt: wo die Kolleginnen und Kollegen einreichen, mit welchem Absender die Morgenmail verschickt wird und wo echte Rechnungen und Budgets liegen dürfen.
  • Bei der Lückenpflege als Nächstes prüfen lassen, ob der Google-Treffer wirklich derselbe Betrieb ist, bevor ein Eintrag als „bestätigt“ gilt.
  • Im README beide Vorhaben kurz erklären: welche Teile es gibt, welche Tabellen sie brauchen und welche Einträge nur Testdaten sind.

Gut zu wissen:Claudias Rechnungsweg zeigt ein gutes Muster: Die KI macht einen Vorschlag, ein kleines Programmstück prüft ihn nach (Steht der Betrag wirklich auf der Rechnung? Ergeben netto plus Steuer den Gesamtbetrag?), und am Ende entscheidet der Mensch. Und was auf dem eigenen Rechner passieren muss, etwa das Stempeln und Ablegen in die eigenen Ordner, darf ruhig ein kleines Programm dort übernehmen. Die Morgenmail zeigt noch einen Kniff: Eine Rechnung gilt erst als gemeldet, wenn die Mail wirklich verschickt ist, so geht keine verloren.

Christina Schwarzenberger · TVB Altenmarkt-Zauchensee

Öffnungszeiten der Gastronomie abgleichen

am letzten Tag dazugekommenAm 24.09. hat Christina den Öffnungszeiten-Check an echten Fehlalarmen nachgeschärft: Er versteht jetzt Angaben wie „Donnerstag Ruhetag“ in Klammern oder „16h30“ und meldet deutlich weniger falsche Widersprüche. Neu ist ein Fehler-Melder, der eine Warnmail schickt, wenn ein Lauf abbricht. Die Wochenpost hat am 24.09. ein neues Aussehen im Stil der Gästekarte bekommen, und Korrekturen kommen einfach als Antwort auf die Mail zurück.

Vorhaben 1Öffnungszeiten der Gastronomie abgleichen

Ob ein Gasthaus gerade offen hat, steht an vielen Stellen: auf der TVB-Seite, bei Google, auf der Website des Betriebs und auf Facebook oder Instagram. Oft passen diese Angaben nicht zusammen, und das fällt erst auf, wenn ein Gast vor verschlossener Tür steht. Christina baut einen Wochencheck, der alle vier Quellen nebeneinanderlegt und ihr montags nur die Abweichungen schickt. Jeden Fall kann sie direkt aus der Mail abhaken oder dem Betrieb mit einem Klick eine vorbereitete Nachricht schreiben; einmal im Quartal kommen die abgehakten Fälle zur Wiedervorlage.

So sieht das Ergebnis aus
Der wöchentliche Öffnungszeiten-Check
Der wöchentliche Öffnungszeiten-CheckDrei Quellen nebeneinander: die eigene Seite, Google und die Website des Betriebs. Abweichungen sind markiert, abhaken geht direkt aus der Mail.
Der Quartalsbericht
Der QuartalsberichtFasst zusammen, was im Quartal geprüft und behoben wurde.
So spielen die Teile zusammen

Der Wochencheck ist die Zentrale: Er lässt vier Bausteine nacheinander je eine Quelle befragen und merkt sich die Befunde in einer Tabelle. Über ein kleines Formular hakt Christina Fälle ab, der Quartalsbericht legt ihr die abgehakten Fälle später wieder vor, und bricht ein Lauf ab, schickt der Fehler-Melder eine Warnung.

  • Christina: Betriebsliste aufbauenlegt die Stammliste an
  • Christina: Teil Detailseite lesenQuelle 1: eigene TVB-Seite
  • Christina: Teil Google abrufenQuelle 2: Google-Eintrag
  • Christina: Teil Website-LeiterQuelle 3: Website des Betriebs
  • Christina: Teil Social MediaQuelle 4: Facebook und Instagram
  • Christina: Öffnungszeiten-Check GastronomieZentrale: vergleicht und meldet
  • Christina: Befund quittierenFälle abhaken oder zurückholen
  • Christina: Quartalsbericht geprüfte Betriebelegt Abgehaktes wieder vor
  • Christina: Fehler-Melderwarnt bei abgebrochenem Lauf
  • Christina: Betriebsliste aufbauenChristina: Teil Detailseite lesenlässt alle Seiten lesen
  • Christina: Betriebsliste aufbauenChristina: Öffnungszeiten-Check GastronomieStammliste in der Tabelle
  • Christina: Öffnungszeiten-Check GastronomieChristina: Teil Detailseite lesenfragt TVB-Zeiten ab
  • Christina: Öffnungszeiten-Check GastronomieChristina: Teil Google abrufenfragt Google-Zeiten ab
  • Christina: Öffnungszeiten-Check GastronomieChristina: Teil Website-Leiterruft je Betrieb auf
  • Christina: Öffnungszeiten-Check GastronomieChristina: Teil Social Mediafragt Social-Hinweise ab
  • Christina: Öffnungszeiten-Check GastronomieChristina: Befund quittierenMail-Knöpfe öffnen Formular
  • Christina: Befund quittierenChristina: Öffnungszeiten-Check Gastronomiehakt Fälle im Gedächtnis ab
  • Christina: Befund quittierenChristina: Quartalsbericht geprüfte Betriebeliefert abgehakte Fälle
  • Christina: Quartalsbericht geprüfte BetriebeChristina: Befund quittierenKnöpfe holen Fälle zurück
  • Christina: Betriebsliste aufbauenChristina: Quartalsbericht geprüfte Betriebeliefert die Betriebsnamen
  • Christina: Öffnungszeiten-Check GastronomieChristina: Fehler-Meldermeldet einen Abbruch
  • Christina: Quartalsbericht geprüfte BetriebeChristina: Fehler-Meldermeldet einen Abbruch
Christina: Öffnungszeiten-Check Gastronomiejeden Montag um 6 Uhr, sobald er eingeschaltet ist; zum Ausprobieren auch per Knopf

Der Wochencheck: Er holt für alle Betriebe die Zeiten aus vier Quellen, vergleicht sie und schickt Christina eine Mail mit den Abweichungen.

Jeden Montag 6 Uhr · scheduleTrigger · Station 1: Start und EinstellungenJeden Montag 6 UhrSTART1Test starten · manualTrigger · Station 1: Start und EinstellungenTest startenSTART1Einstellungen · set · Station 1: Start und EinstellungenEinstellungenFELD1Betriebe laden · dataTable · Station 2: Betriebsliste ladenBetriebe ladenDATEN2Betriebe vorbereiten · code · Station 2: Betriebsliste ladenBetriebe vorbereitenCODE2Teil Detailseite · executeWorkflow · Station 3: TVB-Seite und Google befragenTeil DetailseiteKNOTEN3Eingang Google · code · Station 3: TVB-Seite und Google befragenEingang GoogleCODE3Teil Google · executeWorkflow · Station 3: TVB-Seite und Google befragenTeil GoogleKNOTEN3Eingang Website · code · Station 4: Websites und Social Media befragenEingang WebsiteCODE4Teil Website · executeWorkflow · Station 4: Websites und Social Media befragenTeil WebsiteKNOTEN4Eingang Social · code · Station 4: Websites und Social Media befragenEingang SocialCODE4Teil Social · executeWorkflow · Station 4: Websites und Social Media befragenTeil SocialKNOTEN4Befunde berechnen · code · Station 5: Abweichungen berechnenBefunde berechnenCODE5Gedächtnis laden · dataTable · Station 6: Mit dem Gedächtnis abgleichenGedächtnis ladenDATEN6Gedächtnis und Bericht · code · Station 6: Mit dem Gedächtnis abgleichenGedächtnis undBerichtCODE6Mail an Christina · sendInBlue · Station 7: Mail an ChristinaMail an ChristinaMAIL7Laufprotokoll · dataTable · Station 7: Mail an ChristinaLaufprotokollDATEN7Stammdaten-Zeilen · code · Station 8: Tabellen auf den neuen Stand bringenStammdaten-ZeilenCODE8Stammdaten schreiben · dataTable · Station 8: Tabellen auf den neuen Stand bringenStammdaten schreibenDATEN8Gedächtnis-Zeilen · code · Station 8: Tabellen auf den neuen Stand bringenGedächtnis-ZeilenCODE8Gedächtnis schreiben · dataTable · Station 8: Tabellen auf den neuen Stand bringenGedächtnis schreibenDATEN8
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Start und Einstellungen

    Der Ablauf startet montags früh oder per Knopf. In den Einstellungen steht ein Testschalter: Ist er an, laufen nur zehn Betriebe mit. Nach drei Probeläufen mit allen 79 Betrieben ist er wieder an, bis der Wochencheck richtig eingeschaltet wird.

    In n8n: Jeden Montag 6 Uhr · Test starten · Einstellungen

  2. Betriebsliste laden

    Die Stammliste wird aus der Tabelle geholt. Ein kleines Programmstück macht daraus die Arbeitsliste für diesen Lauf und prüft, ob die Tabelle wirklich alle 79 Betriebe geliefert hat.

    In n8n: Betriebe laden · Betriebe vorbereiten

  3. TVB-Seite und Google befragen

    Zuerst liest der Baustein „Detailseite“ die eigenen TVB-Seiten. Danach fragt der Baustein „Google“ die Google-Einträge ab und nutzt Website und Telefon von der TVB-Seite als Gegenprobe.

    In n8n: Teil Detailseite · Eingang Google · Teil Google

  4. Websites und Social Media befragen

    Die Website-Leiter läuft für jeden Betrieb einzeln. Die Facebook- und Instagram-Adressen, die sie dabei findet, gehen weiter an den Social-Media-Baustein.

    In n8n: Eingang Website · Teil Website · Eingang Social · Teil Social

  5. Abweichungen berechnen

    Ein großes Programmstück legt die Wochenpläne aller Quellen für jeden Betrieb nebeneinander. Es sucht Widersprüche, Lücken bei uns und bald auslaufende Zeiträume; Unsicheres, etwa Zeiten, die nur unsichtbar im Quelltext einer Website stehen, wird zur Prüfbitte. Die KI entscheidet hier nichts.

    In n8n: Befunde berechnen

  6. Mit dem Gedächtnis abgleichen

    Eine Tabelle merkt sich alle bisherigen Befunde. So weiß der Ablauf, was neu ist, was noch offen ist und was inzwischen behoben wurde. Was Christina als „geprüft, stimmt so“ abgehakt hat, kommt erst wieder, wenn sich die Werte ändern.

    In n8n: Gedächtnis laden · Gedächtnis und Bericht

  7. Mail an Christina

    Die Mail zeigt jeden Fall mit Knöpfen zur TVB-Seite, zu Google, zur Website und zu Facebook oder Instagram. Mit weiteren Knöpfen hakt Christina den Fall ab oder öffnet eine fertig vorbereitete Nachricht an den Betrieb. Jeder Lauf bekommt außerdem eine Zeile im Laufprotokoll, jetzt auch mit den Kosten.

    In n8n: Mail an Christina · Laufprotokoll

  8. Tabellen auf den neuen Stand bringen

    Neue Erkenntnisse, etwa der passende Google-Eintrag, gehen zurück in die Stammliste. Das Gedächtnis wird nur bei den echten Montagsläufen fortgeschrieben, damit ein Probelauf nichts durcheinanderbringt.

    In n8n: Stammdaten-Zeilen · Stammdaten schreiben · Gedächtnis-Zeilen · Gedächtnis schreiben

Christina: Betriebsliste aufbauenvon Hand per Knopfdruck, zum Beispiel wenn neue Betriebe dazukommen

Holt alle Einträge von der Tourismus-Website, sucht die Gastronomie heraus und legt daraus die Stammliste mit 79 Betrieben an, ohne dass jemand etwas eintippt.

Test starten · manualTrigger · Station 1: Start und EinstellungenTest startenSTART1Einstellungen · set · Station 1: Start und EinstellungenEinstellungenFELD1Sitemap holen · httpRequest · Station 2: Verzeichnis aller Einträge lesenSitemap holenHTTP2Adressen lesen · code · Station 2: Verzeichnis aller Einträge lesenAdressen lesenCODE2Detailseite lesen · executeWorkflow · Station 3: Jede Detailseite auswerten lassenDetailseite lesenKNOTEN3Gastro filtern und pruefen · code · Station 4: Gastronomie herausfiltern und gegenprüfenGastro filtern undpruefenCODE4Stammdaten schreiben · dataTable · Station 5: Stammliste speichernStammdaten schreibenDATEN5Ergebnis · set · Station 5: Stammliste speichernErgebnisFELD5
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Start und Einstellungen

    Christina startet den Ablauf per Knopf. Vorab ist festgelegt, welches Verzeichnis der Website gelesen wird.

    In n8n: Test starten · Einstellungen

  2. Verzeichnis aller Einträge lesen

    Die Website hat ein öffentliches Verzeichnis aller Detailseiten. Ein kleines Programmstück zieht daraus die 287 Adressen heraus und hält an, wenn verdächtig wenige darin stehen.

    In n8n: Sitemap holen · Adressen lesen

  3. Jede Detailseite auswerten lassen

    Alle Adressen gehen auf einmal an den Baustein „Teil Detailseite lesen“. Er liefert zu jedem Eintrag Name, Adresse, Kategorien und Öffnungszeiten zurück.

    In n8n: Detailseite lesen

  4. Gastronomie herausfiltern und gegenprüfen

    Ein Programmstück behält nur die Einträge unter „Essen & Trinken“ und schreibt Ortsnamen einheitlich. Dann vergleicht es mit einer gespeicherten Vergleichsliste: Was ist neu, was fehlt, was wurde umbenannt? Kommt eine unplausible Zahl heraus, wird nichts gespeichert.

    In n8n: Gastro filtern und pruefen

  5. Stammliste speichern

    Die Betriebe landen in einer Tabelle in n8n, ganz ohne Telefonnummern. Läuft der Ablauf noch einmal, werden die Zeilen aktualisiert statt verdoppelt. Am Ende steht, wie viele Betriebe geschrieben wurden und was die Prüfung ergab.

    In n8n: Stammdaten schreiben · Ergebnis

Christina: Teil Detailseite lesenwenn die Betriebsliste oder der Wochencheck ihn aufruft; zum Ausprobieren auch per Knopf

Baustein, der für einen oder viele Betriebe nachschaut, welche Öffnungszeiten gerade auf der eigenen TVB-Detailseite stehen.

Aufruf · executeWorkflowTrigger · Station 1: Auftrag annehmenAufrufSTART1Test starten · manualTrigger · Station 1: Auftrag annehmenTest startenSTART1Beispiel Goldhirsch · set · Station 1: Auftrag annehmenBeispiel GoldhirschFELD1Eingang · set · Station 1: Auftrag annehmenEingangFELD1Detailseite holen · httpRequest · Station 2: Detailseiten höflich abholenDetailseite holenHTTP2Antwort vereinheitlichen · set · Station 3: Antworten richtig zuordnenAntwortvereinheitlichenFELD3Detailseite auswerten · code · Station 4: Öffnungszeiten herauslesenDetailseite auswertenCODE4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag annehmen

    Meist ruft ein anderer Ablauf diesen Baustein auf und übergibt die Betriebe. Zum Ausprobieren gibt es einen Knopf mit einem Beispielbetrieb.

    In n8n: Aufruf · Test starten · Beispiel Goldhirsch · Eingang

  2. Detailseiten höflich abholen

    Die Seiten werden in kleinen Gruppen mit Pausen geholt, damit die Website nicht überlastet wird. Antwortet eine Seite nicht, läuft es trotzdem weiter.

    In n8n: Detailseite holen

  3. Antworten richtig zuordnen

    Zu jeder Antwort wird vermerkt, zu welchem Betrieb sie gehört und ob die Seite umgezogen ist. So bekommt kein Betrieb aus Versehen die Zeiten eines anderen.

    In n8n: Antwort vereinheitlichen

  4. Öffnungszeiten herauslesen

    Ein Programmstück liest aus der Seite Name, Adresse, Kategorien, Website und alle hinterlegten Zeiträume je Wochentag, auch künftige. Seit dem 24.09. versteht es auch Angaben wie „Donnerstag Ruhetag“ in Klammern oder „16h30“. Das ist reines Rechnen, keine KI; fehlt ein Zeitraum, wird das vermerkt.

    In n8n: Detailseite auswerten

Christina: Teil Google abrufenwenn der Wochencheck ihn aufruft; zum Ausprobieren auch per Knopf

Baustein, der die Google-Einträge der Betriebe abfragt und genau prüft, ob der Treffer wirklich der richtige Betrieb ist.

Aufruf · executeWorkflowTrigger · Station 1: Auftrag annehmenAufrufSTART1Test starten · manualTrigger · Station 1: Auftrag annehmenTest startenSTART1Beispiel Goldhirsch · set · Station 1: Auftrag annehmenBeispiel GoldhirschFELD1Eingang · set · Station 1: Auftrag annehmenEingangFELD1Anfrage bauen · code · Station 2: Suchanfrage vorbereitenAnfrage bauenCODE2Google abfragen · httpRequest · Station 3: Google-Eintrag abfragenGoogle abfragenHTTP3Google-Antwort auswerten · code · Station 4: Treffer prüfen und Zeiten übernehmenGoogle-AntwortauswertenCODE4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag annehmen

    Der Wochencheck übergibt die Betriebe mit Name, Adresse und Lage. Zum Ausprobieren gibt es einen Knopf mit einem Beispielbetrieb.

    In n8n: Aufruf · Test starten · Beispiel Goldhirsch · Eingang

  2. Suchanfrage vorbereiten

    Ein Programmstück stellt für jeden Betrieb eine Anfrage zusammen und gibt ihr die Betriebsnummer mit. Kommen unerwartet viele Betriebe an, stoppt es, bevor die Abfrage etwas kostet.

    In n8n: Anfrage bauen

  3. Google-Eintrag abfragen

    Ein Abfragedienst liefert den Google-Eintrag mit den Öffnungszeiten. Die Antworten werden über die Betriebsnummer zugeordnet, nicht über die Reihenfolge.

    In n8n: Google abfragen

  4. Treffer prüfen und Zeiten übernehmen

    Ein Programmstück macht Gegenproben: Liegt der Treffer weniger als 800 Meter entfernt, passt der Name, stimmen Website oder Telefonnummer? Nur dann werden die Zeiten übernommen, sonst wird eine Prüfbitte daraus. So landen nie die Zeiten der gleichnamigen Hütte im Nachbartal im Bericht.

    In n8n: Google-Antwort auswerten

Christina: Teil Website-Leiterwenn der Wochencheck ihn aufruft, einmal je Betrieb; zum Ausprobieren auch per Knopf

Baustein, der auf der eigenen Website eines Betriebs Stufe für Stufe nach den Öffnungszeiten sucht; die KI darf dabei nur ablesen, was wörtlich dasteht.

janeinjaneinjaneinjaneinAufruf · executeWorkflowTrigger · Station 1: Auftrag annehmen und Adresse prüfenAufrufSTART1Test starten · manualTrigger · Station 1: Auftrag annehmen und Adresse prüfenTest startenSTART1Beispiel Hochgründeck · set · Station 1: Auftrag annehmen und Adresse prüfenBeispiel HochgründeckFELD1Adresse prüfen · code · Station 1: Auftrag annehmen und Adresse prüfenAdresse prüfenCODE1Adresse brauchbar? · if · Station 1: Auftrag annehmen und Adresse prüfenAdresse brauchbar?WEICHE1robots.txt holen · httpRequest · Station 2: Erst höflich fragenrobots.txt holenHTTP2robots prüfen · code · Station 2: Erst höflich fragenrobots prüfenCODE2Abruf erlaubt? · if · Station 2: Erst höflich fragenAbruf erlaubt?WEICHE2Startseite holen · httpRequest · Station 3: Startseite lesenStartseite holenHTTP3Runde 1 · code · Station 3: Startseite lesenRunde 1CODE3Unterseiten nötig? · if · Station 4: Bei Bedarf Unterseiten lesenUnterseiten nötig?WEICHE4Unterseiten aufteilen · splitOut · Station 4: Bei Bedarf Unterseiten lesenUnterseiten aufteilenLISTE4Unterseite holen · httpRequest · Station 4: Bei Bedarf Unterseiten lesenUnterseite holenHTTP4Runde 2 · code · Station 4: Bei Bedarf Unterseiten lesenRunde 2CODE4KI nötig? · if · Station 5: Die KI liest abKI nötig?WEICHE5Zeiten aus Text lesen (KI) · informationExtractor · Station 5: Die KI liest abZeiten aus Text lesen(KI)KI5Sprachmodell (Claude) · lmChatAnthropic · Station 5: Die KI liest abSprachmodell(Claude)KI5Angaben prüfen · code · Station 6: Nachprüfen und Ergebnis meldenAngaben prüfenCODE6Ohne Website · set · Station 6: Nachprüfen und Ergebnis meldenOhne WebsiteFELD6Ergebnis · merge · Station 6: Nachprüfen und Ergebnis meldenErgebnisLISTE6
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag annehmen und Adresse prüfen

    Der Baustein bekommt einen Betrieb mit seiner Website. Ein Programmstück prüft zuerst, ob die Adresse überhaupt brauchbar ist.

    In n8n: Aufruf · Test starten · Beispiel Hochgründeck · Adresse prüfen · Adresse brauchbar?

  2. Erst höflich fragen

    Jede Website hat eine kleine Datei, in der steht, ob Programme mitlesen dürfen. Die wird zuerst abgefragt und beachtet.

    In n8n: robots.txt holen · robots prüfen · Abruf erlaubt?

    WeicheWenn die Website brauchbar ist und Mitlesen erlaubt: wird die Startseite gelesen Sonst: bekommt der Betrieb das Ergebnis „ohne Website“ mit Begründung

  3. Startseite lesen

    Ein Programmstück sucht auf der Startseite zuerst fertige Zeitangaben im Quelltext, dann den besten Textabschnitt rund um Wörter wie „Öffnungszeiten“ oder „Ruhetag“. Zeiten, die nur unsichtbar im Quelltext stehen, bekommen einen Vermerk. Nebenbei merkt es sich Links zu Facebook und Instagram.

    In n8n: Startseite holen · Runde 1

  4. Bei Bedarf Unterseiten lesen

    Reicht die Startseite nicht, werden bis zu vier Unterseiten geholt, etwa „Öffnungszeiten“, „Kontakt“ oder „Kulinarik“. Reicht die Startseite schon, bleibt es bei ihr.

    In n8n: Unterseiten nötig? · Unterseiten aufteilen · Unterseite holen · Runde 2

    WeicheWenn ein Textabschnitt zum Ablesen gefunden wurde: liest die KI (Claude) die Zeiten daraus ab Sonst: geht es ohne KI direkt zur Nachprüfung

  5. Die KI liest ab

    Nur wenn ein passender Textabschnitt da ist, liest die KI (Claude) die Zeiten daraus ab. Zu jeder Angabe muss sie ein wörtliches Zitat liefern.

    In n8n: KI nötig? · Zeiten aus Text lesen (KI) · Sprachmodell (Claude)

  6. Nachprüfen und Ergebnis melden

    Ein Programmstück sucht jedes Zitat im Originaltext wieder und rechnet Tage und Uhrzeiten nach. Was nicht belegt ist, fliegt raus: Der Tag bleibt dann „unbekannt“, nie „geschlossen“. Betriebe ohne brauchbare Website bekommen ein eigenes, klares Ergebnis mit Grund.

    In n8n: Angaben prüfen · Ohne Website · Ergebnis

Christina: Teil Social Mediawenn der Wochencheck ihn aufruft, einmal für alle Betriebe zusammen; zum Ausprobieren auch per Knopf

Baustein, der auf Facebook und Instagram nach Hinweisen wie „ab Montag wieder geöffnet“ sucht, als Hinweisgeber und nie als Beweis.

janeinjaneinjaneinAufruf · executeWorkflowTrigger · Station 1: Auftrag annehmenAufrufSTART1Test starten · manualTrigger · Station 1: Auftrag annehmenTest startenSTART1Beispiel zwei Betriebe · code · Station 1: Auftrag annehmenBeispiel zweiBetriebeCODE1Anfrage bauen · code · Station 2: Anfrage bündelnAnfrage bauenCODE2Profile vorhanden? · if · Station 2: Anfrage bündelnProfile vorhanden?WEICHE2Facebook-Seiten holen · httpRequest · Station 3: Facebook und Instagram abfragenFacebook-Seiten holenHTTP3Facebook-Beiträge holen · httpRequest · Station 3: Facebook und Instagram abfragenFacebook-BeiträgeholenHTTP3Läufe holen · httpRequest · Station 4: Beim Dienst aufräumenLäufe holenHTTP4Datensätze suchen · code · Station 4: Beim Dienst aufräumenDatensätze suchenCODE4Datensatz vorhanden? · if · Station 4: Beim Dienst aufräumenDatensatz vorhanden?WEICHE4Datensatz löschen · httpRequest · Station 4: Beim Dienst aufräumenDatensatz löschenHTTP4Texte je Betrieb · code · Station 5: Texte je Betrieb sortierenTexte je BetriebCODE5Hat Texte? · if · Station 5: Texte je Betrieb sortierenHat Texte?WEICHE5Hinweise lesen (KI) · informationExtractor · Station 6: Die KI sucht HinweiseHinweise lesen (KI)KI6Sprachmodell (Claude) · lmChatAnthropic · Station 6: Die KI sucht HinweiseSprachmodell(Claude)KI6Hinweise prüfen · code · Station 6: Die KI sucht HinweiseHinweise prüfenCODE6Ohne Hinweise · set · Station 7: Ergebnis für jeden BetriebOhne HinweiseFELD7Ohne Social · set · Station 7: Ergebnis für jeden BetriebOhne SocialFELD7Ergebnis · merge · Station 7: Ergebnis für jeden BetriebErgebnisLISTE7Instagram holen · httpRequest · Station 3: Facebook und Instagram abfragenInstagram holenHTTP3
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Auftrag annehmen

    Der Wochencheck übergibt alle Betriebe mit ihren Facebook- und Instagram-Adressen. Zum Ausprobieren gibt es einen Knopf mit zwei Beispielbetrieben.

    In n8n: Aufruf · Test starten · Beispiel zwei Betriebe

  2. Anfrage bündeln

    Ein Programmstück sammelt alle Profile in einer gemeinsamen Anfrage. Sind es unerwartet viele, stoppt es, bevor etwas abgefragt wird.

    In n8n: Anfrage bauen · Profile vorhanden?

    WeicheWenn Betriebe ein Facebook- oder Instagram-Profil haben: werden die Profile abgefragt Sonst: wird die Quelle für diese Betriebe übersprungen

  3. Facebook und Instagram abfragen

    Ein Abfragedienst holt die Angaben der Facebook-Seiten, die letzten Beiträge und die Instagram-Profile.

    In n8n: Facebook-Seiten holen · Facebook-Beiträge holen · Instagram holen

  4. Beim Dienst aufräumen

    Danach folgt ein Aufräumschritt beim Abfragedienst: Die Rohdaten sollen dort nicht liegen bleiben, weil Kontaktdaten der Betriebe darin stehen.

    In n8n: Läufe holen · Datensätze suchen · Datensatz vorhanden? · Datensatz löschen

  5. Texte je Betrieb sortieren

    Ein Programmstück ordnet alles dem richtigen Betrieb zu. Von den Beiträgen bleiben nur die der letzten 30 Tage, in denen es um Zeiten geht.

    In n8n: Texte je Betrieb · Hat Texte?

    WeicheWenn es passende Texte gibt: sucht die KI darin nach Hinweisen Sonst: wird „keine Hinweise“ gemeldet, ohne KI

  6. Die KI sucht Hinweise

    Die KI (Claude) sucht in den Texten nach Saisonbeginn, Saisonende, Ruhetagen oder Betriebsurlaub. Ein Programmstück prüft danach, ob jeder Hinweis wirklich so im Text steht.

    In n8n: Hinweise lesen (KI) · Sprachmodell (Claude) · Hinweise prüfen

  7. Ergebnis für jeden Betrieb

    Die Ergebnisse werden zusammengeführt, auch „nichts gefunden“ zählt dabei als Ergebnis. Social Media kann allein nie einen Widerspruch auslösen, es liefert nur Hinweise mit Datum und Link.

    In n8n: Ohne Hinweise · Ohne Social · Ergebnis

Christina: Befund quittierenwenn Christina in der Montagsmail oder im Quartalsbericht auf einen Knopf klickt und das Formular abschickt

Ein kleines Formular, mit dem Christina einen gemeldeten Fall direkt aus der Mail abhakt oder wieder zurückholt.

Formular: geprüft · formTrigger · Station 1: Formular aus der Mail öffnenFormular: geprüftSTART1Kennungen aufteilen · code · Station 2: Kennung prüfenKennungen aufteilenCODE2Befund abhaken · dataTable · Station 3: Im Gedächtnis eintragenBefund abhakenDATEN3Antwort · set · Station 4: Danke sagenAntwortFELD4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Formular aus der Mail öffnen

    Der Knopf in der Mail öffnet ein Formular im Stil der Gästekarte, in dem der Fall schon eingetragen ist. Christina wählt nur noch „geprüft, stimmt so“, „ausgebessert“ oder „wieder melden“ und schickt ab.

    In n8n: Formular: geprüft

  2. Kennung prüfen

    Ein kleines Programmstück prüft die Kennung. Ein Sammelfall kann mehrere Befunde umfassen, die dann alle zusammen abgehakt werden. Erst das Abschicken ändert etwas, das bloße Öffnen des Links nicht.

    In n8n: Kennungen aufteilen

  3. Im Gedächtnis eintragen

    Der Fall wird in der Befund-Tabelle mit Datum markiert. „Geprüft“ heißt: passt so, bitte nicht mehr melden. „Ausgebessert“ heißt: im eigenen Redaktionssystem korrigiert. „Wieder melden“ holt einen abgehakten Fall zurück in die Montagsmail.

    In n8n: Befund abhaken

  4. Danke sagen

    Christina sieht sofort, wie viele Befunde eingetragen wurden, und kann das Fenster schließen.

    In n8n: Antwort

Christina: Quartalsbericht geprüfte Betriebealle drei Monate am Monatsersten um 7 Uhr, sobald er eingeschaltet ist; zum Ausprobieren auch per Knopf

Einmal im Quartal eine Mail mit allen Fällen, die als „geprüft, stimmt so“ abgehakt wurden, damit nichts für immer stillgelegt bleibt.

Quartalsweise · scheduleTrigger · Station 1: Start und EinstellungenQuartalsweiseSTART1Test starten · manualTrigger · Station 1: Start und EinstellungenTest startenSTART1Einstellungen · set · Station 1: Start und EinstellungenEinstellungenFELD1Befunde laden · dataTable · Station 2: Befunde und Betriebsnamen holenBefunde ladenDATEN2Bericht bauen · code · Station 3: Liste der abgehakten Fälle bauenBericht bauenCODE3Mail an Christina · sendInBlue · Station 4: Mail verschickenMail an ChristinaMAIL4Stammdaten laden · dataTable · Station 2: Befunde und Betriebsnamen holenStammdaten ladenDATEN2
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Start und Einstellungen

    Der Ablauf startet von selbst einmal im Quartal oder per Knopf. In den Einstellungen steht, wohin die Mail geht.

    In n8n: Quartalsweise · Test starten · Einstellungen

  2. Befunde und Betriebsnamen holen

    Zwei Tabellen werden nebeneinander geladen: alle gemerkten Befunde und die Stammliste. Aus der Stammliste kommen die Namen der Betriebe, damit in der Mail keine nackten Nummern stehen.

    In n8n: Befunde laden · Stammdaten laden

  3. Liste der abgehakten Fälle bauen

    Ein Programmstück sucht alle Fälle mit „geprüft, stimmt so“, sortiert sie nach Betrieb und stellt die am längsten abgehakten nach oben. Die gehören am dringendsten wieder angeschaut. Sieht die Liste unvollständig oder doppelt aus, geht lieber keine Mail hinaus.

    In n8n: Bericht bauen

  4. Mail verschicken

    Christina bekommt die Liste als übersichtliche Mail. Bei jedem Betrieb gibt es Knöpfe, um den Fall wieder melden zu lassen oder als ausgebessert einzutragen. Bricht der Bericht ab, meldet sich der Fehler-Melder.

    In n8n: Mail an Christina

Christina: Fehler-Meldervon selbst, wenn ein zeitgesteuerter Lauf des Wochenchecks oder des Quartalsberichts scheitert

Schickt Christina eine verständliche Warnmail, wenn der Montagslauf oder der Quartalsbericht unterwegs abbricht, damit ein Ausfall nicht unbemerkt bleibt.

Wenn ein Lauf scheitert · errorTrigger · Station 1: Abbruch bemerkenWenn ein LaufscheitertSTART1Einstellungen · set · Station 2: Empfängerin festlegenEinstellungenFELD2Mail bauen · code · Station 3: Warnung verständlich formulierenMail bauenCODE3Fehler-Mail an Christina · sendInBlue · Station 4: Warnmail schickenFehler-Mail anChristinaMAIL4
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Abbruch bemerken

    n8n startet diesen Ablauf von selbst, wenn ein Lauf mit Zeitplan abbricht. Bei einem Start per Knopf nicht, denn da sitzt ja jemand davor und sieht es.

    In n8n: Wenn ein Lauf scheitert

  2. Empfängerin festlegen

    In den Einstellungen steht, an wen die Warnung geht und von welcher Adresse sie kommt.

    In n8n: Einstellungen

  3. Warnung verständlich formulieren

    Ein kleines Programmstück schreibt in einfachen Worten, welcher Ablauf wo stehen geblieben ist und was jetzt zu tun ist, zum Beispiel den Lauf später neu starten oder die Meldung an Claude weitergeben.

    In n8n: Mail bauen

  4. Warnmail schicken

    Christina bekommt die Warnung mit einem Knopf, der direkt zum abgebrochenen Lauf in n8n führt.

    In n8n: Fehler-Mail an Christina

Vorhaben 2Wochenpost für Gäste automatisch vorbereiten

Jede Woche erscheint für die Gäste ein gedrucktes Programm mit den Veranstaltungen der nächsten Tage, die Wochenpost. Bisher heißt das: Termine zusammensuchen, auswählen, kurze Texte schreiben und alles setzen. Christinas Ablauf holt die Termine aus den Veranstaltungskalendern von Altenmarkt-Zauchensee und Wagrain-Kleinarl, wählt die Höhepunkte aus, lässt die KI die Beschreibungen kürzen und setzt ein druckfertiges Blatt im Stil der Gästekarte. Christina bekommt es zur Durchsicht, und Korrekturen gehen einfach als Antwort auf die Mail zurück.

So sieht das Ergebnis aus
Die Wochenpost zum Freigeben
Die Wochenpost zum FreigebenBevor die Wochenpost rausgeht, prüft sie sich selbst: Stimmt die Uhrzeit im Text mit der in den Daten überein? Hat die KI beim Kürzen Wörter hinzugedichtet? Wo ja, nimmt sie den Originalsatz und sagt es dazu.
Christina: Wochenpostjeden Mittwoch um 6 Uhr, sobald er eingeschaltet ist; zum Ausprobieren auch per Knopf

Baut aus den Veranstaltungskalendern die Wochenpost für die kommenden neun Tage als druckfertiges Blatt und schickt es Christina zur Durchsicht.

janeinJeden Mittwoch 6 Uhr · scheduleTrigger · Station 1: Start und EinstellungenJeden Mittwoch 6 UhrSTART1Test starten · manualTrigger · Station 1: Start und EinstellungenTest startenSTART1Einstellungen · set · Station 1: Start und EinstellungenEinstellungenFELD1Wochenfenster · code · Station 2: Ausgabe festlegenWochenfensterCODE2Listen holen · httpRequest · Station 3: Veranstaltungskalender abholenListen holenHTTP3Aufbereiten · code · Station 3: Veranstaltungskalender abholenAufbereitenCODE3Detail-Adressen · splitOut · Station 4: Details je Veranstaltung lesenDetail-AdressenLISTE4Detailseiten holen · httpRequest · Station 4: Details je Veranstaltung lesenDetailseiten holenHTTP4Detailtexte lesen · code · Station 4: Details je Veranstaltung lesenDetailtexte lesenCODE4Auswählen · code · Station 5: Höhepunkte auswählenAuswählenCODE5Kurztexte (KI) · informationExtractor · Station 6: Die KI kürzt die TexteKurztexte (KI)KI6Sprachmodell (Claude) · lmChatAnthropic · Station 6: Die KI kürzt die TexteSprachmodell(Claude)KI6Blatt bauen · code · Station 7: Blatt setzen und prüfenBlatt bauenCODE7Freigabefähig? · if · Station 8: Blatt zur Durchsicht schickenFreigabefähig?WEICHE8Mail: nicht freigabefähig · sendInBlue · Station 8: Blatt zur Durchsicht schickenMail: nichtfreigabefähigMAIL8Mail mit Blatt · httpRequest · Station 8: Blatt zur Durchsicht schickenMail mit BlattHTTP8
  • Start
  • Abruf im Netz
  • Rechenschritt
  • Tabelle
  • KI
  • Weiche
  • Mail
  • Antwort
  • Liste
  • Aufbereiten
  • Sonstiges

Breite Abläufe lassen sich im Bild seitlich schieben. Die Zahl an jedem Kästchen zeigt, zu welcher Station unten es gehört.

  1. Start und Einstellungen

    Der Ablauf startet mittwochs früh oder per Knopf. In den Einstellungen steht, wie viele Tage eine Ausgabe umfasst, wer das Blatt bekommt und an wen die Antworten gehen.

    In n8n: Jeden Mittwoch 6 Uhr · Test starten · Einstellungen

  2. Ausgabe festlegen

    Ein kleines Programmstück rechnet aus, welche Ausgabe dran ist: ab dem kommenden Samstag neun Tage bis zum Sonntag der Woche darauf. Zusätzlich wird ein ganzes Jahr angefragt, um zu erkennen, welche Veranstaltungen selten und damit etwas Besonderes sind.

    In n8n: Wochenfenster

  3. Veranstaltungskalender abholen

    Die Terminlisten beider Websites werden geholt. Ein Programmstück führt sie zusammen, streicht doppelte Einträge und Termine aus Nachbarorten und prüft, ob wirklich alles geladen wurde.

    In n8n: Listen holen · Aufbereiten

  4. Details je Veranstaltung lesen

    Für jede Veranstaltung wird die Detailseite geholt, eine nach der anderen mit kurzer Pause. Übrig bleiben nur Preis, Anmeldung, Altersempfehlung, Treffpunkt und Beschreibung.

    In n8n: Detail-Adressen · Detailseiten holen · Detailtexte lesen

  5. Höhepunkte auswählen

    Ein Programmstück wählt aus, was aufs Blatt kommt. Feste Plätze begrenzen die Menge, Punkte bestimmen die Reihenfolge. Seit dem 24.09. entsteht zuerst nur die kompakte Fassung, die Familienfassung wird danach neu gedacht.

    In n8n: Auswählen

  6. Die KI kürzt die Texte

    Die KI (Claude) kürzt jede Beschreibung auf zwei bis drei Sätze, alle in einem einzigen Aufruf. Sie soll nur kürzen und keine eigenen Wörter dazutun. Uhrzeiten, Preise und Alter kommen aus den Datenfeldern, nicht von der KI.

    In n8n: Kurztexte (KI) · Sprachmodell (Claude)

  7. Blatt setzen und prüfen

    Ein Programmstück prüft jeden KI-Text Wort für Wort gegen das Original; fällt er durch, steht der gekürzte Originalsatz da. Dann entsteht das Blatt im Stil der Gästekarte: vier gleich große Felder je Seite mit Nummer im Kreis und QR-Code, im letzten Feld ein Mundartwort und ein Tipp. Eine Prüfliste mit Ampel zeigt, was vor der Freigabe anzuschauen ist.

    In n8n: Blatt bauen

    WeicheWenn die Prüfliste nichts Schwerwiegendes findet (Ampel grün oder gelb): kommt die Mail mit dem Blatt zur Durchsicht Sonst: kommt nur eine Mail mit den Gründen, ohne Blatt

  8. Blatt zur Durchsicht schicken

    Ist die Ampel nicht rot, kommt das Blatt als Anhang: öffnen, drucken oder als PDF speichern. Korrekturen gehen einfach als Antwort zurück, am besten mit der Nummer im Kreis. Bei Rot geht bewusst kein Blatt hinaus, nur eine Mail mit den Gründen.

    In n8n: Freigabefähig? · Mail mit Blatt · Mail: nicht freigabefähig

Das klappt schon
  • Der Öffnungszeiten-Check ist seit dem Abend des 23.09. dreimal mit allen 79 Betrieben durchgelaufen: alle vier Quellen befragt, jeder Betrieb erklärt und jedes Mal eine fertige Mail mit rund 50 Fällen.
  • Das Nachschärfen wirkt: Nach den Änderungen am Morgen des 24.09. meldete der Check statt neun nur noch fünf Widersprüche, unsichere Fälle stehen jetzt als Prüfbitte in der Mail.
  • Die Wochenpost im neuen Aussehen ist am 24.09. dreimal entstanden: ein Blatt mit drei Seiten und zehn Veranstaltungen, dazu eine Prüfliste, die zum Beispiel eine Uhrzeit meldet, die im Kalender anders steht als im Text.
  • Der Fehler-Melder hat im Probelauf eine verständliche Warnmail geschickt: welcher Ablauf wo stehen geblieben ist und was jetzt zu tun ist.
Nächster Schritt
  • Die Wochenpost ein paar Wochen neben der gewohnten Ausgabe mitlaufen lassen, die Antworten der Kolleginnen sammeln und danach die Familienfassung neu denken.
  • Mit dem Trainer klären, ab wann der Wochencheck jeden Montag von selbst läuft und wie Betriebe, bei denen wir noch gar keine Zeiten hinterlegt haben, als Lücke in die Mail kommen; im README festhalten, wie die Teile zusammenspielen.

Gut zu wissen:Christina lässt die KI nur dort schreiben, wo man es nachprüfen kann, und nimmt jeden Fehlalarm als Lehrstück: Aus einem falsch gelesenen „16h30“ oder einem Ruhetag in Klammern wurde sofort eine neue Regel, getestet am echten Fall. Ein blasser Satz ist besser als ein falscher, und eine Prüfbitte ist besser als ein falscher Alarm.

Zwei Vorhaben, die zusammenpassen

Claudia findet heraus, welche Angaben bei Betrieben fehlen, und recherchiert sie bei Google und auf der Website des Betriebs. Christina liest, was auf der TVB-Seite zu den Öffnungszeiten steht, und vergleicht es mit Google und der Website. Zusammen ergibt das ein vollständiges Bild: was fehlt, was stimmt und was sich widerspricht. Ein gemeinsamer Nenner wäre eine Kennung, unter der beide denselben Betrieb wiederfinden.

Teresa · Österreich Werbung

Besprechung aufnehmen, Protokoll bekommen

am letzten Tag dazugekommenAm 24.09. ist Fassung 5 der App „Protokoll“ online gegangen. Neu ist der Bereich „Meine Protokolle“: Dort findet man die eigenen Protokolle wieder, kann darin suchen und ein Protokoll auch selbst löschen, und nach 30 Tagen werden sie laut Seite von allein gelöscht. Beim Warten auf das Protokoll zeigt die Seite jetzt kleine Bilder aus dem Iconset der Österreich Werbung mit österreichischen Wörtern wie „Kipferl tunken“.

So sieht das Ergebnis aus
Die Testbank für die Aufnahme
Die Testbank für die AufnahmeFassung 12 vom 22.09.: Titel der Besprechung, die Einwilligung als Pflichthaken, Aufnahme starten — und darunter die Mikrofon-Diagnose, mit der sie dem Browser-Problem auf iPhones nachgegangen ist.
Die App selbst, ohne Anmeldung
Die App selbst, ohne AnmeldungIm Haus-Layout der Österreich Werbung. Ohne Anmeldung geht es nicht weiter — genau so soll es sein.

Nach jeder Besprechung muss jemand das Protokoll schreiben, und das kostet Zeit. Teresa baut dafür die App „Protokoll“ im Erscheinungsbild der Österreich Werbung: anmelden, Besprechung benennen, das Einverständnis aller Anwesenden bestätigen, Handy oder Laptop in die Tischmitte legen und aufnehmen. Zwischendurch lassen sich Fotos vom Flipchart machen, und am Ende erscheint das Protokoll als Entwurf zum Prüfen und Bearbeiten. Von dort geht es als Text, als Word-Datei nach Vorlage oder als Aufgabe mit Unteraufgaben nach Asana weiter. Unter „Meine Protokolle“ findet man die eigenen Protokolle der letzten 30 Tage wieder.

So spielen die Teile zusammen

Die App schickt die Aufnahme alle drei Minuten als kleines Stück an Teresas eigene n8n, dazu die Fotos, und bekommt am Ende das Protokoll zurück; auch die Weitergabe nach Asana und die Liste „Meine Protokolle“ laufen über ihre n8n. Die Workflows dort sind von hier aus nicht einsehbar und deshalb nicht beurteilbar.

  • App „Protokoll“aufnehmen, prüfen, weitergeben, wiederfinden
  • Teresas eigene n8n (nicht einsehbar)macht aus Ton das Protokoll und hebt es 30 Tage auf
  • App „Protokoll“Teresas eigene n8n (nicht einsehbar)Tonstücke alle drei Minuten
  • App „Protokoll“Teresas eigene n8n (nicht einsehbar)Fotos vom Flipchart
  • Teresas eigene n8n (nicht einsehbar)App „Protokoll“Protokoll als Entwurf
  • Teresas eigene n8n (nicht einsehbar)App „Protokoll“Asana-Projekte zur Auswahl
  • App „Protokoll“Teresas eigene n8n (nicht einsehbar)Protokoll und Fotos nach Asana
  • App „Protokoll“Teresas eigene n8n (nicht einsehbar)Meine Protokolle abrufen, Korrekturen speichern, Protokoll löschen
  • Teresas eigene n8n (nicht einsehbar)App „Protokoll“eigene Protokolle der letzten 30 Tage
Das klappt schon
  • Die App „Protokoll“ ist veröffentlicht und seit dem 24.09. in Fassung 5 online.
  • Die Seite ist so gebaut, dass man sich zuerst anmeldet, die Besprechung benennt und das Einverständnis aller Anwesenden bestätigt, bevor die Aufnahme starten kann.
  • Die Seite teilt lange Aufnahmen in Stücke von drei Minuten und hat einen eigenen Hinweis für schwache Verbindungen.
  • Auf der Seite steht jetzt klar, wie lange was aufbewahrt wird: die Tonaufnahme 24 Stunden, das Protokoll 30 Tage.
Nächster Schritt
  • Die Workflows aus Teresas eigener n8n exportieren und zusammen mit einer kurzen Anleitung ins eigene Repository legen. Dann lässt sich nachvollziehen, wie aus der Aufnahme das Protokoll entsteht und wo es 30 Tage aufbewahrt wird.
  • Den Datenschutztext vor dem ersten Einsatz mit echten Besprechungen mit der zuständigen Stelle der Österreich Werbung abstimmen und bis dahin nur mit erfundenen Besprechungen testen.
  • Die alte Übungsseite (Testbank) stehen lassen und in der Anleitung erklären; wie es mit ihr weitergeht, mit dem Trainer klären.

Gut zu wissen:Lange Aufnahmen in kleine Stücke teilen: Teresas Seite schickt alle drei Minuten ein Stück los. So bleibt jedes Stück klein genug für die Umwandlung in Text, und ein kurzes Funkloch kostet nicht die ganze Besprechung. Und wer mit Stimmen arbeitet, testet zuerst mit erfundenen Besprechungen.

Einige Vorhaben laufen auf eigenen n8n-Instanzen der Teilnehmenden. Die sind hier nicht abgebildet.

Was wir in vier Tagen gelernt haben

  • Lass die KI lesen, einordnen und formulieren, aber lass n8n zählen und rechnen. Dann stimmen deine Zahlen immer, und die KI macht, was sie gut kann.
  • Ein grüner Haken heißt nur: Es ist nichts abgestürzt. Zähl nach, ob wirklich alles angekommen ist, und vermerke etwas erst dann als erledigt, wenn zum Beispiel die Mail tatsächlich verschickt ist.
  • Teste mit erfundenen Daten und so, dass man den Test als Test erkennt. Ein Test, der echte Einträge verändert oder Mails an echte Menschen schickt, ist schon kein Test mehr.
  • Jeder Fehlalarm ist ein Geschenk: Mach daraus eine Regel und probier sie genau an diesem Fall aus. So wird dein Ablauf mit jeder Woche besser.
  • Sei vorsichtig mit allem, was sich nicht zurücknehmen lässt: Löschen, Verschicken, Bezahlen. Fass nie Daten anderer an, und frag lieber einmal zu viel, bevor du so etwas einbaust oder auslöst.
  • Nimm einen fertigen Baustein, wenn es einen gibt, statt eines langen Programmstücks. Was du selbst erklären kannst, kannst du in ein paar Wochen auch noch ändern.
  • Entscheide bewusst, was nach dem Bootcamp weiterläuft, und schreib es in deine Beschreibung: was von selbst startet, wer die Mails bekommt und welche Zugänge es braucht. Dazu gehört ein konkreter nächster Schritt für deine Organisation.

Ein Bootcamp der Österreich Werbung · in Kooperation mit buildbar_ · © 2026 Friedemann Schütz