Back to page

Realtime Audit Stream

Raw Markdown & AI/RAG Chunks
Raw Markdown Source 2646 chars
# Realtime Audit Stream

To expose call analytics instantly across dashboard views, the integration platform reads long-term logging rows directly from telecommunications arrays. **Asterisk 2** queries raw `cdr`, `cel`, and `queue_log` tracking schemas natively inside `AstDbContext`.

---

## Real-Time Analytics Query Map

The flowchart below maps out the decoupled telemetry access model returning detailed session parameters to client views:

```mermaid
graph TD
    %% Dashboard Request
    subgraph UIClient["Management User Interface"]
        ReqUI["Dashboard Polling Action<br/>(Queries Live Metrics)"]
    end

    %% Query Pipeline
    subgraph ProxyService["Decoupled Query Broker"]
        EFQuery["LINQ AsNoTracking Execution<br/>(AstDbContext Proxies)"]
    end

    %% Underlying Ledgers
    subgraph OperationalAudit["Underlying Core Databases"]
        TabCdr[("cdr Table<br/>(Finalized Session Ledger)")]
        TabCel[("cel Table<br/>(Granular Sub-Events)")]
        TabQueue[("queue_log Table<br/>(Call Center Wait Stats)")]
    end

    %% Paths
    ReqUI --> ProxyService
    ProxyService ==>|"Mapped Query"| TabCdr
    ProxyService ==>|"Mapped Query"| TabCel
    ProxyService ==>|"Mapped Query"| TabQueue

    %% Theming
    classDef clientToken fill:#0f172a,stroke:#38bdf8,stroke-width:2px,color:#fff,rx:6px,ry:6px;
    classDef svcToken fill:#312e81,stroke:#ec4899,stroke-width:2px,color:#fff,rx:6px,ry:6px;
    classDef auditToken fill:#1e293b,stroke:#a855f7,stroke-width:2px,color:#fff,rx:6px,ry:6px;

    class UIClient,ReqUI clientToken;
    class ProxyService,EFQuery svcToken;
    class OperationalAudit,TabCdr,TabCel,TabQueue auditToken;
```

---

## Audit Table Specifications

### 1. `Cdr` (Call Detail Record) Mapping
Captures finalized caller sessions:
- **`Calldate`** (`DateTime`): Initialization start timestamp.
- **`Src`** & **`Dst`**: Origination and destination dialing extension strings.
- **`Duration`** & **`Billsec`**: Absolute channel connection timers.
- **`Disposition`**: Operational answer status string (e.g., `ANSWERED`, `NO ANSWER`, `BUSY`).

### 2. `Cel` (Channel Event Logging) Mapping
Traces individual channel sub-actions:
- **`Eventtype`** (`string`): Event class string (e.g., `CHAN_START`, `BRIDGE_ENTER`, `HANGUP`).
- **`Uniqueid`** (`string`): Distributed call correlation string matching long-term RAG search records.

### 3. `QueueLog` Mapping
Monitors call center queue efficiency:
- **`Queuename`** (`string`): Logical queue identifier targeting grouped answering operators.
- **`Event`** (`string`): Real-time wait action parameter (e.g., `ENTERQUEUE`, `CONNECT`, `ABANDON`).
AI Chunks (RAG) 3 chunks
Chunk #1 Realtime Audit Stream
# Realtime Audit Stream

To expose call analytics instantly across dashboard views, the integration platform reads long-term logging rows directly from telecommunications arrays. **Asterisk 2** queries raw `cdr`, `cel`, and `queue_log` tracking schemas natively inside `AstDbContext`.

---
Chunk #2 Real-Time Analytics Query Map
## Real-Time Analytics Query Map

The flowchart below maps out the decoupled telemetry access model returning detailed session parameters to client views:

```mermaid
graph TD
    %% Dashboard Request
    subgraph UIClient["Management User Interface"]
        ReqUI["Dashboard Polling Action<br/>(Queries Live Metrics)"]
    end

    %% Query Pipeline
    subgraph ProxyService["Decoupled Query Broker"]
        EFQuery["LINQ AsNoTracking Execution<br/>(AstDbContext Proxies)"]
    end

    %% Underlying Ledgers
    subgraph OperationalAudit["Underlying Core Databases"]
        TabCdr[("cdr Table<br/>(Finalized Session Ledger)")]
        TabCel[("cel Table<br/>(Granular Sub-Events)")]
        TabQueue[("queue_log Table<br/>(Call Center Wait Stats)")]
    end

    %% Paths
    ReqUI --> ProxyService
    ProxyService ==>|"Mapped Query"| TabCdr
    ProxyService ==>|"Mapped Query"| TabCel
    ProxyService ==>|"Mapped Query"| TabQueue

    %% Theming
    classDef clientToken fill:#0f172a,stroke:#38bdf8,stroke-width:2px,color:#fff,rx:6px,ry:6px;
    classDef svcToken fill:#312e81,stroke:#ec4899,stroke-width:2px,color:#fff,rx:6px,ry:6px;
    classDef auditToken fill:#1e293b,stroke:#a855f7,stroke-width:2px,color:#fff,rx:6px,ry:6px;

    class UIClient,ReqUI clientToken;
    class ProxyService,EFQuery svcToken;
    class OperationalAudit,TabCdr,TabCel,TabQueue auditToken;
```

---
Chunk #3 Audit Table Specifications
## Audit Table Specifications

### 1. `Cdr` (Call Detail Record) Mapping
Captures finalized caller sessions:
- **`Calldate`** (`DateTime`): Initialization start timestamp.
- **`Src`** & **`Dst`**: Origination and destination dialing extension strings.
- **`Duration`** & **`Billsec`**: Absolute channel connection timers.
- **`Disposition`**: Operational answer status string (e.g., `ANSWERED`, `NO ANSWER`, `BUSY`).

### 2. `Cel` (Channel Event Logging) Mapping
Traces individual channel sub-actions:
- **`Eventtype`** (`string`): Event class string (e.g., `CHAN_START`, `BRIDGE_ENTER`, `HANGUP`).
- **`Uniqueid`** (`string`): Distributed call correlation string matching long-term RAG search records.

### 3. `QueueLog` Mapping
Monitors call center queue efficiency:
- **`Queuename`** (`string`): Logical queue identifier targeting grouped answering operators.
- **`Event`** (`string`): Real-time wait action parameter (e.g., `ENTERQUEUE`, `CONNECT`, `ABANDON`).