Technische Architektur
┌─────────────────────────────────────────────────────────┐
│ EINGANGS-E-MAIL (info@firma.de) │
└────────────────────────┬────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ INTREXX E-MAIL-CONNECTOR (IMAP/POP3) │
│ • Prüft alle 5 Min. auf neue E-Mails │
│ • Download: Betreff, Text, Anhänge │
│ • Trigger: onNewEmail Event │
└────────────────────────┬────────────────────────────────┘
│
│ Groovy Hook sendet:
│ - E-Mail ID
│ - Betreff
│ - E-Mail-Text
│ - Absender
│ - Optional: Anhänge (Base64)
▼
┌─────────────────────────────────────────────────────────┐
│ n8n WEBHOOK NODE │
│ • Empfängt Request von Intrexx │
└────────────────────────┬────────────────────────────────┘
│
▼
┌─────────────────────────────────────────────────────────┐
│ CLAUDE TEXT API (KLASSIFIZIERUNG) │
│ Prompt: │
│ "Klassifiziere diese E-Mail: │
│ Betreff: {{ subject }} │
│ Text: {{ body }} │
│ │
│ Kategorien: │
│ - SUPPORT (technisches Problem) │
│ - VERTRIEB (Produkt-Interesse) │
│ - BESCHWERDE (Unzufriedenheit) │
│ - RECHNUNG (Rechnungsfrage) │
│ - BEWERBUNG (Bewerbungsunterlagen) │
│ - SPAM (Werbung, nicht relevant) │
│ - SONSTIGES │
│ │
│ Priorität: │
│ - HOCH (Beschwerde, dringend) │
│ - MITTEL (Support, Vertrieb) │
│ - NIEDRIG (Info, Rechnung) │
│ │
│ Antwort als JSON." │
└────────────────────────┬────────────────────────────────┘
│
│ Response:
│ {
│ "category": "SUPPORT",
│ "priority": "MITTEL",
│ "confidence": 94,
│ "suggested_team": "Support Team",
│ "reasoning": "Kunde hat Passwort-Problem"
│ }
▼
┌─────────────────────────────────────────────────────────┐
│ n8n: IF NODE (Confidence) │
│ Confidence > 90%? │
│ ├─ JA: Auto-Route + Ticket erstellen │
│ └─ NEIN: Manuelle Prüfung nötig │
└────────────────────────┬────────────────────────────────┘
│
│ Callback an Intrexx REST API
▼
┌─────────────────────────────────────────────────────────┐
│ INTREXX: TICKET ERSTELLEN │
│ • Datenbank-Eintrag (tickets-Tabelle) │
│ • Kategorie, Priorität, Zuständiges Team │
│ • E-Mail an Team (z.B. support@firma.de) │
│ • Status: "Neu" oder "Manuelle Prüfung" │
└─────────────────────────────────────────────────────────┘
Code-Beispiele (Claude Prompts)
1. Basis-Prompt (5 Kategorien)
Klassifiziere diese E-Mail in eine der folgenden Kategorien:
**E-Mail:**
Betreff: {{ $json.subject }}
Text: {{ $json.body }}
Absender: {{ $json.from }}
**Kategorien:**
- SUPPORT: Technisches Problem, Bug, Passwort-Reset, Fehler
- VERTRIEB: Produkt-Interesse, Angebotsanfrage, Demo-Termin, Preisanfrage
- BESCHWERDE: Unzufriedenheit, Reklamation, Kulanz-Anfrage, schlechte Bewertung
- RECHNUNG: Rechnungsfrage, Zahlungsbestätigung, Buchhaltungs-Anfrage
- SPAM: Werbung, Newsletter (nicht abonniert), Phishing
**Priorität:**
- HOCH: Beschwerde oder dringender Support-Fall
- MITTEL: Support, Vertrieb
- NIEDRIG: Rechnung, Info
**Antwort als JSON:**
{
"category": "SUPPORT",
"priority": "MITTEL",
"confidence": 95,
"suggested_team": "Support Team",
"reasoning": "Kurze Erklärung warum diese Kategorie"
}
2. Few-Shot Prompt (mit Beispielen)
Klassifiziere E-Mails anhand dieser Beispiele:
**Beispiel 1:**
Betreff: "Passwort vergessen"
Text: "Ich kann mich nicht mehr einloggen"
→ Kategorie: SUPPORT, Priorität: MITTEL
**Beispiel 2:**
Betreff: "Interesse an Ihrer Software"
Text: "Können Sie mir ein Angebot schicken?"
→ Kategorie: VERTRIEB, Priorität: MITTEL
**Beispiel 3:**
Betreff: "Lieferung zu spät!"
Text: "Ich bin sehr unzufrieden, Lieferung 5 Tage verspätet"
→ Kategorie: BESCHWERDE, Priorität: HOCH
**Jetzt klassifiziere:**
Betreff: {{ $json.subject }}
Text: {{ $json.body }}
Antwort als JSON:
{
"category": "...",
"priority": "...",
"confidence": 0-100,
"suggested_team": "...",
"reasoning": "..."
}
3. Multi-Sprachen Prompt
Classify this email (any language).
**Email:**
Subject: {{ $json.subject }}
Body: {{ $json.body }}
**Categories:**
- SUPPORT: Technical issues, bugs, password problems
- SALES: Product interest, quote request
- COMPLAINT: Dissatisfaction, refund request
- INVOICE: Invoice questions, payment
- SPAM: Advertising, phishing
**Return category in German:**
SUPPORT, VERTRIEB, BESCHWERDE, RECHNUNG, SPAM
**Response as JSON:**
{
"category": "SUPPORT",
"priority": "MITTEL",
"confidence": 95,
"suggested_team": "Support Team",
"detected_language": "en",
"reasoning": "..."
}