feat: Implement Trading Twins Autopilot with Teams integration and फैक्टर-3 overbooking logic [31988f42]

This commit is contained in:
2026-03-04 08:22:28 +00:00
parent 3a8f7aea6b
commit 89b06e64af
14 changed files with 849 additions and 25 deletions

View File

@@ -1,4 +1,4 @@
# Lead Engine: Multi-Source Automation v1.1 [31388f42]
# Lead Engine: Multi-Source Automation v1.2 [31988f42]
## 🚀 Übersicht
Die **Lead Engine** ist ein spezialisiertes Modul zur autonomen Verarbeitung von B2B-Anfragen aus verschiedenen Quellen. Sie fungiert als Brücke zwischen dem E-Mail-Postfach und dem **Company Explorer**, um innerhalb von Minuten hochgradig personalisierte Antwort-Entwürfe auf "Human Expert Level" zu generieren.
@@ -29,17 +29,34 @@ Die **Lead Engine** ist ein spezialisiertes Modul zur autonomen Verarbeitung von
* **Status-Tracking:** Visueller Indikator (🆕/✅) für den Synchronisations-Status mit dem Company Explorer.
* **Low-Quality-Warnung:** Visuelle Kennzeichnung (⚠️) von Leads mit Free-Mail-Adressen oder ohne Firmennamen direkt in der Übersicht.
### 6. Trading Twins Autopilot (NEU v2.0)
Der vollautomatische "Zero Touch" Workflow für Trading Twins Anfragen.
* **Human-in-the-Loop:** Vor Versand erhält Elizabeta Melcer eine Teams-Nachricht ("Approve/Deny").
* **5-Minuten-Timeout:** Erfolgt keine Reaktion, wird die E-Mail automatisch versendet.
* **Smart Calendar:**
* **Faktor-3-Überbuchung:** Termine werden bis zu 3x parallel angeboten, um den Kalender dicht zu füllen.
* **Soft-Blocking:** Interne Datenbank verhindert Doppelbuchungen über den Faktor 3 hinaus.
* **Technologie:**
* **Teams Webhook:** Für interaktive "Adaptive Cards".
* **Graph API:** Für sicheren E-Mail-Versand (statt SMTP).
* **Orchestrator:** Steuert den Ablauf (Lead -> CE -> Teams -> Timer -> Mail).
## 🏗 Architektur
```text
/app/lead-engine/
├── app.py # Streamlit Web-Interface
├── trading_twins_ingest.py # E-Mail Importer (Graph API für alle Quellen)
├── ingest.py # Enthält alle spezifischen Parser
├── lookup_role.py # LinkedIn/Role Research (SerpAPI + Gemini)
├── generate_reply.py # Email Draft Generator (Gemini)
├── monitor.py # Asynchroner CE-Status Monitor
├── db.py # Lokale SQLite Lead-Datenbank
├── trading_twins_ingest.py # E-Mail Importer (Graph API)
├── monitor.py # Monitor + Trigger für Orchestrator
├── trading_twins/ # [NEU] Autopilot Modul
│ ├── orchestrator.py # Prozess-Steuerung (Timer, Logic)
├── manager.py # Slot-Logik & DB-Zugriff
│ ├── teams_notification.py# Teams Webhook Integration
│ ├── email_sender.py # Graph API Mailer
│ ├── api_server.py # Feedback-Endpunkt (Port 8004)
│ └── models.py # SQLite DB für Jobs/Slots
├── db.py # Lokale Lead-Datenbank
└── data/ # DB-Storage
```
@@ -53,23 +70,24 @@ docker-compose restart lead-engine
```
**Zugriff:** `https://floke-ai.duckdns.org/lead/` (Passwortgeschützt)
**API Feedback Loop:** Port 8004 (intern).
## 📝 Nutzungshinweise
1. **Ingest:** Klicke in der Web-App auf "2. Ingest Real Emails". Das System lädt alle neuen Leads, egal welcher Quelle.
2. **Sync:** Wähle einen Lead und klicke auf "Sync to Company Explorer".
3. **Wait:** Der Monitor erkennt automatisch, wenn die Analyse im CE fertig ist.
4. **Draft:** Klicke auf "Generate Expert Reply" für den fertigen Entwurf.
## 📝 ToDos & Integration (Status: Warten auf IT)
## 📋 Roadmap / Nächste Schritte
Die Logik ist implementiert und getestet ("Dry Run"). Für den Go-Live fehlen folgende Credentials in der `.env`:
- [ ] **Phase 2: Intelligente Antworten für Kontaktformulare:** Entwicklung einer kontextbezogenen Antwortlogik für Website-Formular-Leads.
- [ ] **IT-Klärung:** Microsoft Bookings Berechtigungen (`Bookings.Read.All`, `BookingsAppointment.ReadWrite.All`) für die Entra App anfragen.
- [ ] **Infrastruktur:** Korrekten Buchungslink (persönliches Konto) ermitteln und in der `.env` hinterlegen.
- [ ] **CRM-Integration:** Modul "Push to SuperOffice" entwickeln, um Personen und E-Mail-Entwürfe direkt im CRM anzulegen.
- [ ] **Daten-Synchronisation:** Notion-Produktdatenbank in die lokale DB spiegeln, um Produktauswahl und ROI-Berechnung zu dynamisieren.
- [ ] **Logik:** ROI-Kalkulation im E-Mail-Entwurf auf Basis von echten Leistungsdaten (m²/h) und Preisen schärfen.
- [ ] **UI:** "Copy to Clipboard" Funktion für den fertigen Entwurf in der Web-App finalisieren.
1. **Teams Webhook:**
* Benötigt: URL für den "Incoming Webhook" Connector.
* Env-Var: `TEAMS_WEBHOOK_URL`
2. **Microsoft Graph API:**
* Benötigt: App Registration mit `Mail.Send` und `Calendars.Read`.
* Env-Vars: `AZURE_CLIENT_ID`, `AZURE_CLIENT_SECRET`, `AZURE_TENANT_ID`.
3. **Assets:**
* [ ] Banner-Bild `RoboPlanetBannerWebinarEinladung.png` nach `/app/lead-engine/trading_twins/` hochladen.
* [ ] HTML-Signatur in `/app/lead-engine/trading_twins/signature.html` finalisieren.
---
*Dokumentationsstand: 2. März 2026*
*Task: [31388f42]*
*Dokumentationsstand: 4. März 2026*
*Task: [31988f42]*