EDR Contents for Aggregated Usage

Event Detail Records (EDRs) for aggregated usage are generated for usage events and can contain information that spans multiple network messages. They are generated in response to a defined trigger condition. EDR contents for aggregated usage contents differs from non-aggregated usage EDRs.

The top-level event type for EDRs for aggregated usage is always 1.

Event Time and Event Duration

EDRs can be aggregated by time and session, and can be grouped by custom field, or a combination of these parameters. EDRs for aggregated usage can be triggered by session, time, or quantity. The event time is determined differently based on the type of aggregation:
  • Aggregation by Session Only

    Event start times and end times are the start and end times of usage within the session associated with the aggregation (associated with the service context, and field values). More specifically, the start time is the EventTime in the message with the first authorization request for associated usage, and the end time is the EventTime in the message terminating the session or session context (CC TERMINATE, Session TERMINATE, or CC UPDATE with reporting reason of FINAL, and session expiration).

  • Aggregation by Time Only
    Event start times and end times are the start and end time of the aggregation period. However, if there is no usage associated with the aggregation at the start of the period, then the start time is the beginning of associated usage. Similarly, if there is no usage associated with the aggregation at the end of the period, then the event end time is the end of associated usage (the EventTime in the message ending the last associated session context).
    Note: If aggregation is by time (for example, hourly) and there are two sessions with the same service context in that period, both sessions are included in the aggregation.
  • Aggregation by Session and Time

    Event start times are the beginning of usage associated with the session (first authorization time) if that usage begins within the time period. Otherwise, the event start time is the period start time. The end time is the end of the associated usage (end of session or service context in session) if the end is within the time period. Otherwise, the event end time is the end of the period.

Event Duration is in microseconds and is derived from the start and end time of usage.

If a quantity limit is reached within a session, or within a time period, then events are generated for what has accumulated to that point. If there is additional usage within the session or time period, then additional events are generated for that usage. The EventTime for the subsequent usage is the time from the message which reported the usage that crossed the quantity limit. For example, for an hourly aggregation with a 100MB threshold, if usage is 150MB between 3:15pm and 3:30pm and the 100MB threshold is reached at 3:25, an EDR is generated for the 3pm to 4pm period with an EventTime of 3:15pm and a Duration of 10 minutes. A second EDR is generated for the 3pm to 4pm period with an EventTime of 3:25pm and a Duration of 5 minutes.

If usage aggregation is grouped, the end time is tracked for each group. The Duration is based on either the latest usage end time or the period end time depending on whether there are any sessions associated with the grouping at the end of the period.

Aggregation by Time Scenarios

If aggregation is hourly, one aggregation period could be from 3pm to 4pm. If a first usage message occurs within the 3pm to 4pm aggregation period at 3:15, then 3:15pm is the EventTime for the EDR generated for this segment.

When usage terminates within an aggregation, an EDR is generated for that period and indicates the EventTime and Duration for that period. For example, for the 3pm to 4pm aggregation period, if usage stops at 3:45pm, an EDR is generated for the 3pm to 4pm period, with an EventTime of 3:15 and a Duration of 30 minutes.

If usage spans multiple segments, the duration for a single period is the EventTime to the end of the period. The EventTime for any period after the initial period is the start of that period. For example, if usage starts at 3:45pm and finishes at 4:30pm, two EDRs are generated for hourly aggregation. The first EDR is generated for the 3pm to 4pm period with an EventTime of 3:45pm and Duration of 15 minutes. A second EDR is generated for the 4pm to 5pm period with an EventTime of 4pm and a Duration of 30 minutes.

If usage aggregation is by time and a quantity trigger is specified, the EndTime for the EDR is the same as the EventTime of the message that caused the quantity limit to be reached. The StartTime of the next EDR is the same as the EndTime of the previous EDR.