Data Formats

SBA Gateway can be configured to publish events to a Kafka topic for every Network interaction received on the N28 and N40 interfaces. The format of these events is JSON, and the key for these events is the ChargingDataRef.

The following is an example of a ChargingDataRequest event published by the SBA Gateway.

{
    "request": {
      "source" : "SMF",
      "operationName": "Nchf_ConvergedCharging_Create",
      "method": "POST",
      "uri": "/nchf-convergedcharging/v2/chargingdata",
      "headers": {
          .... etc
       },
       "body": {
          .... etc
       }
    },
    "response": {
        "source" : "CHF",
        "statusCode": 201,
        "reason": "Created",
        "headers": {
             .... etc
         },
         "body": {
             .... etc
         }
    }
}

The following is an example of a ChargingNotifyRequest:

{
    "request": {
      "source" : "CHF",
      "operationName": "Nchf_ConvergedCharging_Notify",
      "method": "POST",
      "uri": "<notifyUri from Request as sent by SMF>",
      "headers": {
          .... etc
       },
       "body": {
          .... etc
       }
    },
    "response": {
        "source" : "SMF",
        "statusCode": 204,
        "reason": "No Content",
        "headers": {
             .... etc
         },
         "body": {
             .... etc
         }
    }
}

The CDR Aggregation Function (CAF) application creates an aggregated record for each network interaction. This causes any of the configured threshold limits to be breached. Events for such aggregations are created per-session-per-rating-group or per-session, depending on configuration. The key for the event is the SessionId or ChargingDataRef for the session.

The following is an example of an aggregated event:

{
    "recordCloseReason" : "VOLUME|NUMBER_OF_INTERACTIONS|SESSION_RELEASE",
    "sessionId" : "<ChargingDataRef>",
    "rnfId": "<rnfId as per configured option>",
    "aggregations": [
        {
          "ratingGroupId": 41,
          "volume" : 314572800,
          "lastMessageType" : "Update",
          "numberOfInteractions" : 3         
        }
     ],
     "networkInteraction" : "<JSON Body of Charging Request which started the aggregation, updated with values as per TS 32.255 Section 6.2.2.>",
}

Aggregated Event Fields describes the fields in an aggregated event.

Table 1. Aggregated Event Fields
Field Type Description
aggregations Collection of objects A collection of aggregated values per rating group.
ratingGroupId Number The rating group ID as seen in the ChargingDataRequest MultiplUnitUsage element.
volume Number The aggregated volume, in bytes, for a rating group, at the instant this aggregation record is created.
lastMessageType String The last received ChargingDataRequest type. Valid values are Create, Update, or Release.
numberOfInteractions Number The aggregated count of the number of ChargingDataRequests that have been processed up to this point for a particular session or rating group, depending on configuration.
recordCloseReason Enumeration The reason for closing or generating this aggregation record. Valid values are VOLUME, NUMBER_OF_INTERACTIONS, or SESSION_RELEASE.
networkInteraction Object The JSON body of the charging request that started the aggregation, updated with values as specified in TS 32.255 Section 6.2.2. It includes all MUU elements received from the SMF until this aggregation was created.