Skip to main content

Procesamiento de CDRs

El núcleo funcional de EagleSync radica en su capacidad para capturar, interpretar, enriquecer y valorizar registros de llamadas (CDRs – Call Detail Records) provenientes de múltiples fuentes. Este procesamiento se realiza mayormente dentro de la librería EagleSyncLib, encargada de aplicar las reglas de negocio que definen la utilidad del dato bruto.

🔄 Flujo General del Proceso

  1. Obtención del CDR

    • Desde archivos planos, sockets o APIs según el driver configurado.
    • Se almacena una copia de respaldo del CDR original en la carpeta /Cdrs.
  2. Identificación del cliente

    • El sistema identifica qué cliente es responsable del CDR.
    • Asocia automáticamente con el driver y la configuración correspondiente.
  3. Parseo y limpieza

    • Se extraen campos relevantes (origen, destino, fecha/hora, duración, etc.).
    • Se eliminan caracteres especiales o líneas inválidas.
  4. Determinación del tipo de llamada

    • Entrante, Saliente, Interna, o Internacional.
    • Se utilizan reglas basadas en prefijos, números conocidos, y la configuración del cliente.
  5. Normalización de datos

    • Se transforman los datos a un formato estándar para facilitar su análisis y visualización.
    • Ejemplo: un número internacional se convierte al formato E.164.
  6. Valoración económica

    • Con base en la tabla de tarifas configuradas por el canal o cliente.
    • Se calculan los siguientes valores:
      • Costo base por llamada.
      • Costo por duración (segundos, minutos, bloques).
      • Impuestos aplicables.
  7. Asociación con responsables

    • El sistema identifica qué usuario o extensión realizó la llamada.
    • Asocia el registro con una empresa, área o persona (si está mapeada).
  8. Registro en base de datos

    • Se insertan los registros procesados en la base de datos remota (EagleDB).
    • Se marcan como procesados exitosamente para evitar reprocesos.
  9. Gestión de errores

    • CDRs inválidos o incompletos se registran en logs para revisión posterior.
    • El sistema no elimina información original.

⚙️ Módulos involucrados

  • EagleSyncLib: Contiene toda la lógica de negocio central.
  • EagleProcessWinService: Realiza reprocesos y cálculos posteriores.
  • EagleSyncWinService: Ejecuta la sincronización diaria y llama al procesamiento.
  • EagleSync (Visual): Permite configurar las reglas y monitorear el proceso.

🧠 Reglas de valoración personalizables

Cada canal o cliente puede definir reglas específicas como:

  • Tarifas por destino o tipo de llamada.
  • Horarios especiales (oficina vs fuera de oficina).
  • Límites o redondeo de duración.
  • Inclusión de llamadas internas sin costo.
  • Diferenciación por proveedor de llamadas.

🗂️ Respaldos y auditoría

  • Se guarda una copia de cada CDR original para respaldo.
  • Todos los pasos del procesamiento se registran en archivos de log por día y cliente.
  • La interfaz visual permite consultar qué se procesó, cuándo y con qué resultados.

Este procesamiento es clave para que los clientes obtengan informes económicos reales, detecten anomalías en el uso de recursos de comunicación y optimicen su infraestructura de llamadas.