21 Commits

Author SHA1 Message Date
8dc699ec9e feat(sync): Add force_espo_wins option for conflict resolution in bidirectional sync 2026-02-09 10:30:01 +00:00
a157d3fa1d feat(docs): Update documentation for Kommunikation Sync and VMH Sync steps, marking legacy files and enhancing clarity 2026-02-08 23:03:44 +00:00
e057f9fa00 Enhance KommunikationSyncManager and Sync Event Step
- Improved bidirectional synchronization logic in KommunikationSyncManager:
  - Added initial sync handling to prevent duplicates.
  - Optimized hash calculation to only write changes when necessary.
  - Enhanced conflict resolution with clearer logging and handling of various scenarios.
  - Refactored diff computation for better clarity and maintainability.

- Updated beteiligte_sync_event_step to ensure proper lock management:
  - Added error handling for entity fetching and retry logic.
  - Improved logging for better traceability of sync actions.
  - Ensured lock release in case of unexpected errors.
2026-02-08 22:21:08 +00:00
79e097be6f feat(sync): Implement auto-reset for permanently_failed entities and add retry backoff logic
- Added logic to reset permanently_failed entities that have reached their auto-reset threshold in `beteiligte_sync_cron_step.py`.
- Enhanced event handling in `beteiligte_sync_event_step.py` to skip retries if the next retry time has not been reached.
- Introduced validation checks after sync operations to ensure data consistency and integrity.
- Created detailed documentation outlining the fixes and their impacts on the sync process.
- Added scripts for analyzing sync issues and comparing entities to facilitate debugging and validation.
2026-02-08 21:12:00 +00:00
ebbbf419ee feat: Implement bidirectional synchronization utilities for Advoware and EspoCRM communications
- Added KommunikationSyncManager class to handle synchronization logic.
- Implemented methods for loading data, computing diffs, and applying changes between Advoware and EspoCRM.
- Introduced 3-way diffing mechanism to intelligently resolve conflicts.
- Added helper methods for creating empty slots and detecting changes in communications.
- Enhanced logging for better traceability during synchronization processes.
2026-02-08 19:53:40 +00:00
da9a962858 feat: Integrate NotificationManager for handling notifications in sync operations 2026-02-08 14:42:33 +00:00
68c8b398aa feat: Implement VMH Bankverbindungen sync handlers and API steps for create, update, and delete operations 2026-02-08 12:49:14 +00:00
709456301c feat: Optimize initial sync logic and remove redundant rowId updates in sync process 2026-02-07 22:38:53 +00:00
7a7a322389 feat: Remove redundant update filtering logic in VMH Webhook handler 2026-02-07 22:29:33 +00:00
d10554ea9d feat: Update dateOfBirth mapping and enhance rowId handling in sync process for Beteiligte 2026-02-07 22:27:29 +00:00
d5bc17e454 feat: Remove redundant conflict resolution logging in handle_update function 2026-02-07 21:53:37 +00:00
bed3c09bb1 feat: Improve logging and rowId handling in sync process for Advoware and EspoCRM 2026-02-07 21:52:58 +00:00
101f290293 feat: Implement entity comparison logic for improved sync detection between EspoCRM and Advoware 2026-02-07 19:41:20 +00:00
9076688f58 fix: Replace warning with warn method in logger for consistency in Beteiligte sync steps 2026-02-07 19:18:38 +00:00
3354aef936 feat: Refactor webhook handlers for Beteiligte to improve ID processing and logging, and enhance update filtering logic 2026-02-07 18:53:54 +00:00
ae1d96f767 Add sync strategy documentation and templates for bidirectional sync between EspoCRM and Advoware
- Introduced SYNC_STRATEGY_ARCHIVE.md detailing the sync process, status values, and flow for updating entities from EspoCRM to Advoware and vice versa.
- Created SYNC_TEMPLATE.md as a guide for implementing new syncs, including field definitions, mapper examples, sync utilities, event handlers, and cron jobs.
- Added README_SYNC.md for the Beteiligte sync event handler, outlining its functionality, event subscriptions, optimizations, error handling, and performance metrics.
2026-02-07 15:54:13 +00:00
8550107b89 feat: Enhance Advoware API integration with backward compatibility for data payloads and improve logging for sync events 2026-02-07 15:44:56 +00:00
b5abe6cf00 Implement EspoCRM-based sync strategy for Beteiligte entities
- Add SYNC_STRATEGY_ESPOCRM_BASED.md detailing the sync flows and status management.
- Create utilities for sync operations in services/beteiligte_sync_utils.py, including locking, timestamp comparison, conflict resolution, and notification handling.
- Implement entity mapping between EspoCRM and Advoware in services/espocrm_mapper.py.
- Develop a cron job for periodic sync checks in steps/vmh/beteiligte_sync_cron_step.py, emitting events for entities needing synchronization.
2026-02-07 15:21:16 +00:00
36552903e7 cleanup 2026-02-07 09:23:49 +00:00
root
d715fca5f5 Aufteilung der README.md in modulare Dokumentation
- Haupt-README.md behält Übersicht und Links zu detaillierten READMEs
- steps/advoware_proxy/README.md: Detaillierte Dokumentation der 4 Proxy-Steps
- steps/vmh/README.md: Detaillierte Dokumentation der Webhook-Receiver und Sync-Steps
- Verbesserte Navigation und modulare Dokumentationsstruktur
2025-10-20 11:46:30 +00:00
root
805d8c7362 Vollständige Advoware-EspoCRM Integration implementiert
- Advoware API Proxy für alle HTTP-Methoden (GET/POST/PUT/DELETE)
- EspoCRM Webhook-Receiver für Beteiligte CRUD-Operationen
- Redis-basierte Deduplikation für Webhook-Events
- Event-driven Synchronisations-Handler (Placeholder)
- Detaillierte README.md mit Setup und Verwendungsanleitung
- Fehlerbehebungen für Context-Attribute und Redis-Verbindungen
2025-10-20 11:42:52 +00:00