DSG-SCP EDRs

Introduction

The DSG-SCP (Diameter Signalling Gateway - SCP) creates EDRs for Diameter messaging that it handles.

Additional Event Types

The DSG-SCP creates EDRs for the following Event Types:

DIAMETER / DIAMETER-R / DIAMETER-A Event Type EDRs

The DIAMETER EDR Event represents a single Diameter Credit-Control-Request message and its associated Credit-Control-Answer response message , if any. DIAMETER EDRs are only produced if the DSG-SCP application parameter diameter_split_edrs is set to produce combined EDRs.

If the application is configured to produce split Diameter EDRs, Diameter Credit-Control-Request messages will instead produce a DIAMETER-R EDR and Diameter Credit-Control-Answer messages - or the failure to receive a message - will produce a DIAMETER-A EDR. DIAMETER EDRs contain all fields from DIAMETER-R and DIAMETER-A EDRs.

In all cases, other SCP EDRs will be associated with Diameter EDRs containing additional information.

| Attribute | Type | In DIAMETER-R | In DIAMETER-A | Description | | :-------: | :--: | :---------: | :---------: | :---------- | | `DIAMETER_SID` | String | Yes | Yes | **[Always Present]** The generated Diameter `Session-Id` value for this call. | | `RECEIVED` | Integer | No | Yes | Set to `0` if no response was received from the OCS, otherwise not present. | | `MSISDN` | String | Yes | No | The `Subscription-Id` → `Subscription-Id-Data` value sent to the OCS when DSG-SCP is configured to send the received MSISDN. | | `IMSI` | String | Yes | No | The `Subscription-Id` → `Subscription-Id-Data` value sent to the OCS when DSG-SCP is configured to send the received IMSI. | | `REQ_NUM` | Integer | Yes | Yes | **[Always Present]** The Diameter `CC-Request-Number` value. | | `REQ_TYPE` | Integer | Yes | Yes | **[Always Present]** The Diameter `CC-Request-Type` value. One of `1` (`INITIAL_REQUEST`), `2` (`UPDATE_REQUEST`), or `3` (`TERMINATE_REQUEST`). | | `RC_ROOT` | Integer | No | Yes | **[Always Present]** The root-level `Result-Code` used to determine the action to apply. | | `RC_ORIG_ROOT` | Integer | No | Yes | The root-level `Result-Code` returned from the OCS. Only present if the `Result-Code` returned from the OCS was overridden as part of [Result-Code rule processing](/config/dsg_scp/diameter/result_code_rules.html). | | `RC_MSCC` | Integer | No | Yes | The `Multiple-Services-Credit-Control` → `Result-Code` used to determine the action to apply, if any. | | `RC_ORIG_ROOT` | Integer | No | Yes | The `Multiple-Services-Credit-Control` → `Result-Code` returned from the OCS. Only present if the `Multiple-Services-Credit-Control` → `Result-Code` returned from the OCS was overridden as part of [Result-Code rule processing](/config/dsg_scp/diameter/result_code_rules.html). | | `ACTION` | Integer | No | Yes | **[Always Present]** The [Result-Code rule action](/config/dsg_scp/diameter/result_code_rules.html#result-code-rule-actions) selected based on the OCS response. Note that this may contain alternate values in some cases:
  • `close_root` - the Diameter `Multiple-Services-Credit-Control` → `Result-Code` for the previous request indicated that the rating sub-session was closed, but the root `Result-Code` kept the session open. In such cases, the root session will be closed via this action with no rating information given.
  • `close_all` - the OCS indicated a successful rating response prior to termination, but did not provide any units to use. In such cases, both the root session and the `Multiple-Services-Credit-Control` sub-session, if any, are closed with no further usage.
| | `TOTAL` | Integer | Yes | No | The total time reported used (in seconds) by the network for the call, if any. | | `SI` | Integer | Yes | No | The `Service-Identifier` value sent to the OCS for this request, if any. | | `RG` | Integer | Yes | No | The `Rating-Group` value sent to the OCS for this request, if any. | | `SCI` | String | Yes | No | The `Service-Context-Id` value sent to the OCS for this request, if any. | | `RSU` | Integer | Yes | No | The `Requested-Service-Units`> → `CC-Time` value sent to the OCS for this request, if any. | | `USU` | Integer | Yes | No | The `Used-Service-Units`> → `CC-Time` value sent to the OCS for this request, if any. | | `GSU` | Integer | No | Yes | The `Granted-Service-Units`> → `CC-Time` value returned from the OCS for this request, if any. | | `BF` | Integer | No | Yes | Set to `1` if the [Result-Code rule](/config/dsg_scp/diameter/result_code_rules.html) indicates `is_bf`, otherwise not present. | | `FINAL` | Integer | No | Yes | Set to `1` if the OCS returned a `Final-Unit-Indication`, otherwise not present. | | `TONE` | Integer | No | Yes | Set according to the `tone` value of the matched [tone rule](/config/dsg_scp/diameter/tone_rules.html), if any. | | (tags) | (various) | Conditional | Yes | The name and value for each [tag](/config/dsg_scp/diameter/tags.html) that has had a value assigned to it for this call instance. Note that tags that have their value set by the billing engine via [AVP reading](/config/dsg_scp/diameter/response.html#read-avp-definitions) are suppressed in `DIAMETER-R` EDRs, although their value is still taken into account when building the request, i.e. when applying [selector rules](/config/dsg_scp/diameter/selector_rules.html) and specifying tags as part of the condition. |

GRACE Event Type EDRs

The GRACE EDR Event provides information on time granted for a call outside the control of the OCS. Such EDRs are produced when the Result-Code rule action or billing bypass rule action used is continue_period, and they record the amount of unrated time that the call used. In all cases, either a DIAMETER EDR or BYPASS EDR will be produced, as appropriate, as well as other SCP EDRs that are associated with this instance containing additional information. These EDRs provide sufficient information to allow calls to be post-rated on the OCS, if required.

| Attribute | Type | Description | | :-------: | :--: | :---------- | | `MSISDN` | String | The `Subscription-Id` → `Subscription-Id-Data` value originally sent to the OCS when DSG-SCP is configured to send the received MSISDN. | | `IMSI` | String | The `Subscription-Id` → `Subscription-Id-Data` value originally sent to the OCS when DSG-SCP is configured to send the received IMSI. | | `ACTION` | Integer | The triggering [Result-Code rule action](/config/dsg_scp/diameter/result_code_rules.html#result-code-rule-actions) applied. | | `TOTAL` | Integer | The total time reported used (in seconds) by the network for the call, if any. This includes the grace grant. | | `SI` | Integer | The `Service-Identifier` value originally sent to the OCS for this request, if any. | | `RG` | Integer | The `Rating-Group` value originally sent to the OCS for this request, if any. | | `SCI` | String | The `Service-Context-Id` value originally sent to the OCS for this request, if any. | | `USU` | Integer | The `Used-Service-Units`> → `CC-Time` value that would have been sent to the OCS for the grace grant, i.e. the used time. | | `GSU` | Integer | The number of seconds given for the grace grant. | | (tags) | (various) | The name and value for each [tag](/config/dsg_scp/diameter/tags.html) that has had a value assigned to it for this call instance. |

SPECIAL Event Type EDRs

The SPECIAL EDR Event is created when a call undergoes special number handling.

| Attribute | Type | Description | | :-------: | :--: | :---------- | | `NUMBER` | String | **[Always Present]** The destination number that triggered special handling. | | `SPECIAL` | String | **[Always Present]** The [special number handling](/config/dsg_scp/special_numbers.html) applied for this call. |

BYPASS Event Type EDRs

BYPASS EDRs are created when a received call matches a billing bypass rule.

| Attribute | Type | Description | | :-------: | :--: | :---------- | | `ACTION` | String | **[Always Present]** The [billing bypass rule action](/config/dsg_scp/diameter/billing_bypass.html#billing-bypass-rule-actions) applied. | | `MSISDN` | String | As for the [`DIAMETER` EDR `MSISDN` field](#diameter--diameter-r--diameter-a-event-type-edrs). | | `IMSI` | String | As for the [`DIAMETER` EDR `IMSI` field](#diameter--diameter-r--diameter-a-event-type-edrs). | | (tags) | (various) | As for the [`DIAMETER` EDR](#diameter--diameter-r--diameter-a-event-type-edrs). | ### PROBLEM Event Type EDRs The DSG-SCP creates `PROBLEM` EDRs when issues are encountered during processing. These EDRs extend the format for [SCP PROBLEM EDRs](/edr/scp_edrs.html#problem-edr).
| Attribute | Type | Description | | :-------: | :--: | :---------- | | `TYPE` | String | **[Always Present]** A simple keyword defining the category of the problem. | | `ERROR` | String | **[Always Present]** Description of the error. | | `ACTION` | String | **[Always Present]** The [error handling rule action](/config/dsg_scp/diameter/error_handling.html#error-handling-rule-actions) applied for the error. | | `MSISDN` | String | As for the [`DIAMETER` EDR `MSISDN` field](#diameter--diameter-r--diameter-a-event-type-edrs). | | `IMSI` | String | As for the [`DIAMETER` EDR `IMSI` field](#diameter--diameter-r--diameter-a-event-type-edrs). | | (tags) | (various) | As for the [`DIAMETER` EDR](#diameter--diameter-r--diameter-a-event-type-edrs). |