Zum Inhalt springen

E-Mail-System

  1. Handler (alle 10s): Prueft auf ausstehende Business-Events
    • TwoFactorCodeHandler — prueft login_attempt auf neue 2FA-Codes
    • WelcomeHandler — prueft auf neue Accounts
  2. Preparation Worker (alle 10s): Rendert Templates, erstellt system_message
    • Template-Lookup: Site → Tenant → System (3-Ebenen-Hierarchie)
    • Uebersetzungen aus email_translation_key (Scope: global/tenant/site)
    • Idempotent: NOT EXISTS Pruefung vor Insert
  3. Dispatch Worker (alle 10s): Versendet pending Mails
    • Produktion: AWS SES
    • Entwicklung: SMTP (MailHog)
    • Max 3 Retries, trackt sent_at oder failed_at
TemplateBeschreibung
layoutBasis-HTML-Layout
signatureE-Mail-Signatur
two_factor_code2FA-Code mit Standort, IP, Geraet
password_reset_codeReset-Code (Admin-initiiert)
password_changedBestaetigung nach Passwort-Aenderung
account_deactivatedAccount-Deaktivierung durch Admin
new_device_loginLogin von neuem Geraet nach 2FA
contact_notificationBenachrichtigung bei Kontaktanfrage
contact_confirmationBestaetigung an Besucher
welcomeWillkommens-E-Mail mit Login-Link
EbeneBeschreibung
System-DefaultBasis-Templates (von Agency gepflegt)
Tenant-OverrideKunde ueberschreibt fuer seinen Mandanten
Site-OverrideSpezifisch pro Website des Kunden

Lookup-Reihenfolge: Site → Tenant → System. Erstes Ergebnis gewinnt.

DE + EN Seeds fuer alle gaengigen Strings (Anrede, Betreff, Footer, etc.). Scope-Hierarchie: Site → Tenant → Global.

Separate email-Tabelle (dedupliziert per SHA-256) mit email_relation-Verknuepfung. account.email existiert nicht — Login laeuft ueber email_relation (type: account_primary).

TypEmpfaengerAusloeser
2FA-Login-CodeAccount-UserLogin von unbekanntem Device
Password-Reset-CodeAccount-UserAdmin loest Reset aus
Password-ChangedAccount-UserPasswort geaendert
Account-DeactivatedAccount-UserAdmin deaktiviert Account
New-Device-LoginAccount-UserLogin von neuem Geraet
Kontakt-NotificationTenant-KontaktadresseNeue Kontaktanfrage
Kontakt-BestaetigungBesucherKontaktanfrage abgeschickt
WillkommenAccount-UserAccount angelegt