feat(docs): Update documentation for Kommunikation Sync and VMH Sync steps, marking legacy files and enhancing clarity

This commit is contained in:
2026-02-08 23:03:44 +00:00
parent 89fc657d47
commit a157d3fa1d
4 changed files with 50 additions and 24 deletions

View File

@@ -1,8 +1,25 @@
# Kommunikation Sync Implementation # Kommunikation Sync Implementation
## Overview > **⚠️ Diese Datei ist veraltet und wird nicht mehr gepflegt.**
> **Aktuelle Dokumentation**: [../docs/SYNC_OVERVIEW.md](../docs/SYNC_OVERVIEW.md)
Bidirektionale Synchronisation von Email- und Telefon-Daten zwischen Advoware und EspoCRM. ## Quick Reference
Für die vollständige und aktuelle Dokumentation siehe [SYNC_OVERVIEW.md](../docs/SYNC_OVERVIEW.md#kommunikation-sync).
**Implementiert in**: `services/kommunikation_sync_utils.py`
### Kern-Features
1. **Base64-Marker** in Advoware `bemerkung`: `[ESPOCRM:base64_value:kommKz]`
2. **Hash-basierte Change Detection**: MD5 von allen Kommunikation-rowIds
3. **6 Sync-Varianten**: Var1-6 für alle Szenarien (neu, gelöscht, geändert)
4. **Empty Slots**: Workaround für DELETE 403
5. **Konflikt-Handling**: EspoCRM wins, direction='to_advoware'
---
# Legacy Documentation (Reference Only)
## Architektur-Übersicht ## Architektur-Übersicht

View File

@@ -1,5 +1,7 @@
# VMH Webhook & Sync Steps # VMH Webhook & Sync Steps
> **📚 Vollständige Sync-Dokumentation**: [../../docs/SYNC_OVERVIEW.md](../../docs/SYNC_OVERVIEW.md)
Dieser Ordner enthält die Webhook-Receiver für EspoCRM und den Event-basierten Synchronisations-Handler für Beteiligte-Entitäten. Dieser Ordner enthält die Webhook-Receiver für EspoCRM und den Event-basierten Synchronisations-Handler für Beteiligte-Entitäten.
## Übersicht ## Übersicht
@@ -8,7 +10,7 @@ Die VMH-Steps implementieren eine vollständige Webhook-Pipeline:
1. **Webhook Receiver** empfangen Events von EspoCRM 1. **Webhook Receiver** empfangen Events von EspoCRM
2. **Redis Deduplication** verhindert Mehrfachverarbeitung 2. **Redis Deduplication** verhindert Mehrfachverarbeitung
3. **Event Emission** triggert die Synchronisation 3. **Event Emission** triggert die Synchronisation
4. **Sync Handler** verarbeitet die Änderungen (aktuell Placeholder) 4. **Sync Handler** verarbeitet die Änderungen (**Production Ready**)
## Webhook Receiver Steps ## Webhook Receiver Steps
@@ -91,28 +93,28 @@ Die VMH-Steps implementieren eine vollständige Webhook-Pipeline:
**Zweck:** Zentraler Event-Handler für die Synchronisation von Beteiligte-Änderungen. **Zweck:** Zentraler Event-Handler für die Synchronisation von Beteiligte-Änderungen.
**Status:****Production Ready** - Vollständig implementiert
**Konfiguration:** **Konfiguration:**
- **Type:** event - **Type:** event
- **Name:** VMH Beteiligte Sync - **Name:** VMH Beteiligte Sync
- **Subscribes:** `vmh.beteiligte.create`, `vmh.beteiligte.update`, `vmh.beteiligte.delete` - **Subscribes:**
- `vmh.beteiligte.create` - Neue Entities
- `vmh.beteiligte.update` - Änderungen
- `vmh.beteiligte.delete` - Löschungen
- `vmh.beteiligte.sync_check` - Cron-Checks (alle 15min)
- **Flows:** vmh - **Flows:** vmh
- **Emits:** (none)
**Funktionalität:** **Funktionalität:**
- Empfängt Events von allen Webhook-Receivern - Empfängt Events von allen Webhook-Receivern + Cron
- Aktuell Placeholder-Implementierung (nur Logging) - ✅ Redis Distributed Lock (verhindert Race Conditions)
- Entfernt verarbeitete IDs aus Redis-Pending-Queues - ✅ Beteiligte Sync (Stammdaten): rowId-basierte Change Detection
- Bereit für Integration mit EspoCRM-API - ✅ Kommunikation Sync (Phone/Email/Fax): Hash-basierte Change Detection
- ✅ Konflikt-Handling: EspoCRM wins mit Notification
- ✅ Retry-Logic: Exponential Backoff (1min, 5min, 15min, 1h, 4h)
- ✅ Auto-Reset nach 24h bei permanently_failed
**Event Data Format:** **Dokumentation:** Siehe [../../docs/SYNC_OVERVIEW.md](../../docs/SYNC_OVERVIEW.md)
```json
{
"entity_id": "entity-123",
"action": "create",
"source": "webhook",
"timestamp": "2025-01-20T10:00:00Z"
}
```
## Redis Deduplication ## Redis Deduplication

View File

@@ -1,7 +1,11 @@
# Beteiligte Sync - Event Handler # Beteiligte Sync - Event Handler
> **📚 Vollständige Dokumentation**: [../../docs/SYNC_OVERVIEW.md](../../docs/SYNC_OVERVIEW.md)
Event-driven sync handler für bidirektionale Synchronisation von Beteiligten (Stammdaten). Event-driven sync handler für bidirektionale Synchronisation von Beteiligten (Stammdaten).
**Implementiert in**: `steps/vmh/beteiligte_sync_event_step.py`
## Subscribes ## Subscribes
- `vmh.beteiligte.create` - Neuer Beteiligter in EspoCRM - `vmh.beteiligte.create` - Neuer Beteiligter in EspoCRM

View File

@@ -2,18 +2,21 @@
type: step type: step
category: event category: event
name: VMH Beteiligte Sync name: VMH Beteiligte Sync
version: 1.0.0 version: 2.0.0
status: placeholder status: active
tags: [sync, vmh, beteiligte, event, todo] tags: [sync, vmh, beteiligte, event, production]
dependencies: [] dependencies: [redis, espocrm, advoware]
emits: [] emits: []
subscribes: [vmh.beteiligte.create, vmh.beteiligte.update, vmh.beteiligte.delete] subscribes: [vmh.beteiligte.create, vmh.beteiligte.update, vmh.beteiligte.delete, vmh.beteiligte.sync_check]
--- ---
# VMH Beteiligte Sync Event Step # VMH Beteiligte Sync Event Step
> **⚠️ Diese Datei ist veraltet.**
> **Aktuelle Dokumentation**: [../../docs/SYNC_OVERVIEW.md](../../docs/SYNC_OVERVIEW.md)
## Status ## Status
⚠️ **PLACEHOLDER** - Implementierung noch ausstehend **PRODUCTION** - Vollständig implementiert und in Betrieb
## Zweck ## Zweck
Verarbeitet Create/Update/Delete-Events für Beteiligte-Entitäten und synchronisiert zwischen EspoCRM und Zielsystem. Verarbeitet Create/Update/Delete-Events für Beteiligte-Entitäten und synchronisiert zwischen EspoCRM und Zielsystem.