Zum Inhalt springen

Demo-Modus

Terminal-Fenster
./bin/form-gateway -demo

Der Demo-Modus macht eine frische Instanz in einem Schritt bespielbar: Mailausgang, Mandanten und Site-Keys sind sofort da, ohne dass man im Admin etwas anlegen muss. Gedacht zum Ausprobieren, für Vorführungen und für die lokale Entwicklung — nicht für den Produktivbetrieb.

Alles, was der Modus anlegt, ist normale Konfiguration: Nach dem Start lassen sich Routen und Mandanten im Admin-UI ansehen und verändern wie jede andere auch.

Ein eingebetteter SMTP-Sink lauscht auf 127.0.0.1:2525 (ist der Port belegt, weicht er automatisch aus). Er nimmt jede Mail an, sendet aber nichts weiter, sondern legt sie als .eml-Datei unter <datenverzeichnis>/demo-mails/ ab. Nichts verlässt die Maschine.

Zwei SMTP-Routen auf diesen Sink, damit beide Versandpfade ausprobierbar sind:

RouteRolle
Demo-Postfach (geteilte Default-Route)bedient alle Mandanten ohne eigene Route
Demo-Firmenserver (eigene Route)einem Mandanten fest zugeordnet

Zwei Mandanten, die sich bewusst unterscheiden:

MandantOriginsRoutePoW-BitsKontingent
Astro-Demohttp://localhost:4321, http://localhost:4322geteilte Default-Route8500/Tag
Demo-Firmenseitehttps://www.firma.exampleeigene Route12100/Tag

Die zweite Origin-Menge ist kein Zufall: Sie zeigt die Mandanten-Isolation. Ein Formular auf localhost:4321 kann mit dem Site-Key der Demo-Firmenseite nicht senden — die Origin passt nicht.

Auf der Konsole erscheinen Sink-Port, Ablageverzeichnis und die Site-Keys beider Mandanten — dazu die beiden Zeilen, die direkt in die .env der Astro-Demo gehören:

PUBLIC_GATEWAY_URL=http://localhost:8080
PUBLIC_SITE_KEY=site_…

Die Ausgabe erscheint bei jedem Start des Demo-Modus, nicht nur beim ersten — die Site-Keys sind also nicht verloren, wenn das Terminal zugeklappt wird.

  1. ./bin/form-gateway -demo starten und die Ausgabe kopieren.
  2. Die beiden Zeilen in examples/astro-demo/.env schreiben, die Astro-Demo starten.
  3. Ein Formular absenden.
  4. In <datenverzeichnis>/demo-mails/ liegt Sekunden später die .eml-Datei — mit jedem Mailprogramm oder einem Texteditor zu öffnen.

Parallel dazu lohnt der Blick ins Admin-UI: Unter dem Mandanten Astro-Demo steht die Absendung mit Status und Historie.

Die lauffähige Astro-Seite mit Formularen über alle Feldarten liegt im Repository unter examples/astro-demo.

Das Seeding ist idempotent: Ein zweiter Start legt nichts doppelt an und überschreibt keine Änderungen, die man im Admin gemacht hat. Er gibt lediglich die Site-Keys erneut aus.

Der Demo-Modus stellt sich bewusst dumm, damit man schnell durchkommt:

  • Die Demo-Routen sprechen unverschlüsseltes SMTP (plain) mit dem lokalen Sink.
  • Der Sink stellt nichts zu — er schreibt Dateien.
  • Die Demo-Mandanten tragen erfundene Empfängeradressen (…@demo.local, …@firma.local) und niedrige Schutzwerte.

Für den echten Betrieb eine eigene Route mit TLS und einen eigenen Mandanten anlegen (siehe Bedienung) und das Gateway ohne -demo starten. Die Demo-Objekte lassen sich danach im Admin löschen.