You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
taskbot/docs/how-to/adjusting-group-sync.md

25 lines
1.1 KiB
Markdown

# Ajustar la sincronización de grupos y miembros
Configuración por entorno
- GROUP_SYNC_INTERVAL_MS: intervalo para refrescar lista de grupos activos.
- GROUP_MEMBERS_SYNC_INTERVAL_MS: intervalo para refrescar miembros de grupos activos.
- WHATSAPP_COMMUNITY_ID: comunidad a sincronizar desde Evolution API.
Operaciones comunes
- Forzar refresco de caché de grupos:
- Llama `GroupSyncService.refreshActiveGroupsCache()` tras cambios relevantes.
- Sincronizar miembros de un grupo concreto:
- `await GroupSyncService.syncMembersForGroup(groupId)`.
- Comprobar frescura de snapshot:
- `GroupSyncService.isSnapshotFresh(groupId)` en función de `MAX_SNAPSHOT_AGE_MS`.
Puntos de extensión
- API de origen:
- Implementa/ajusta `(GroupSyncService as any).fetchGroupMembersFromAPI(groupId)` si se mockea/inyecta.
- Reconciliación:
- `reconcileGroupMembers(groupId, snapshot)` espera objetos `{ userId, isAdmin }`.
Buenas prácticas
- No correr schedulers en test (el servicio ya lo evita).
- Usa transacciones al actualizar tablas de grupos/miembros (ya integrado en upsert).