--- type: step category: event name: VMH Beteiligte Sync version: 2.0.0 status: active tags: [sync, vmh, beteiligte, event, production] dependencies: [redis, espocrm, advoware] emits: [] subscribes: [vmh.beteiligte.create, vmh.beteiligte.update, vmh.beteiligte.delete, vmh.beteiligte.sync_check] --- # VMH Beteiligte Sync Event Step > **⚠️ Diese Datei ist veraltet.** > **Aktuelle Dokumentation**: [../../docs/SYNC_OVERVIEW.md](../../docs/SYNC_OVERVIEW.md) ## Status ✅ **PRODUCTION** - Vollständig implementiert und in Betrieb ## Zweck Verarbeitet Create/Update/Delete-Events für Beteiligte-Entitäten und synchronisiert zwischen EspoCRM und Zielsystem. ## Config ```python { 'type': 'event', 'name': 'VMH Beteiligte Sync', 'subscribes': [ 'vmh.beteiligte.create', 'vmh.beteiligte.update', 'vmh.beteiligte.delete' ], 'emits': [], 'flows': ['vmh'] } ``` ## Geplantes Verhalten **Input Events**: ```json { "topic": "vmh.beteiligte.create", "data": { "entity_id": "123", "action": "create", "source": "webhook", "timestamp": "..." } } ``` **Processing**: 1. Fetch full entity data from EspoCRM 2. Map to target system format 3. Create/Update/Delete in target system 4. Remove ID from Redis pending set 5. Log success/failure ## Implementierungs-Aufgaben - [ ] EspoCRM API Client erstellen - [ ] Entity-Mapping definieren - [ ] Zielsystem-Integration - [ ] Error-Handling & Retry-Logic - [ ] Redis Cleanup (remove from pending sets) - [ ] Logging & Monitoring ## Redis Cleanup Nach erfolgreicher Verarbeitung: ```python redis.srem('vmh:beteiligte:create_pending', entity_id) redis.srem('vmh:beteiligte:update_pending', entity_id) redis.srem('vmh:beteiligte:delete_pending', entity_id) ``` ## Testing (Future) ```bash # Manually emit event for testing # (via Motia CLI or test script) ``` ## KI Guidance Wenn Sie diesen Step implementieren: 1. Erstellen Sie EspoCRM API Client in `services/` 2. Definieren Sie Mapping-Logic 3. Implementieren Sie Retry-Logic mit exponential backoff 4. Cleanen Sie Redis Sets nach Verarbeitung 5. Loggen Sie alle Operationen für Audit ## Related - [webhook/beteiligte_create_api_step.md](webhook/beteiligte_create_api_step.md) - Emits create events - [webhook/beteiligte_update_api_step.md](webhook/beteiligte_update_api_step.md) - Emits update events - [webhook/beteiligte_delete_api_step.md](webhook/beteiligte_delete_api_step.md) - Emits delete events