Oracle® Communications Service Broker SVC Implementation Guide Release 6.0 Part Number E24885-02 |
|
|
View PDF |
This chapter explains how to integrate SVC with external charging applications.
SVC supports offline and online Diameter-based charging applications. Specifically, its acts as a Diameter client or Charging Trigger Function (CTF) that reports session and event information related to SVC activities to external Diameter servers.
SVC supports Diameter offline (Rf) charging for all of its services and online (Ro) charging for incoming calls to SVC subscribers. Charging can be event-based, session-based, or both.
Diameter messages are mainly composed of attribute-value pairs (AVPs) containing charging data. SVC supports AVPs from both the RFC 3855 and 3GPP TS 32.299 standards (standards-based AVPs) and additional AVPs supplied for SVC (non-standards based AVPs).
Configuring charging to work with SVC includes these general steps:
Configuring AVPs.
After installing Service Broker you select and run scripts that provide support for the standards-based AVPs, and also add support for any of the non-standards based AVPs that your implementation requires. Once you run these scripts, you cannot make further changes to the list of supported AVPs without reinstalling Service Broker.
Configuring communication between your charging application and Service Broker. You do this by configuring the SSU Diameter and an IM-OCF.
Configuring traffic routing within Service Broker by configuring the Orchestration Engine.
SVC supports Diameter Ro (online) charging of incoming calls only. This section assumes that you have:
Obtained a Diameter server and its IP address and port number.
Installed Service Broker.
Started a domain and Managed Server.
Run the define_svc_vpn_avps.xml or define_svc_avps.xml during installation.
These scripts add the Diameter Ro AVPs to use to Service Broker. See the discussion on “Next Steps” in Oracle Communications Service Broker Installation Guide for more information on running these scripts.
SVC supports the Diameter Ro AVPs listed in the following sections:
The SVC-based AVPs are available for you to use if your implementation requires it. To set up Diameter Ro charging for your SVC service:
Open the Administration Console.
In the navigation pane expand OCSB, Signaling Tier, and SSU Diameter.
Configure SSU Diameter. Specifically, define Service Broker as the Diameter node, and define at least one Diameter peer. You need to specify the IP address, hostname, listening port number, and supported protocol for each node and peer. Ensure that the Application ID entry is set to 4 for Ro charging.
For more information, see the discussion on configuring Diameter Signalling Server Units in Oracle Communications Service Broker Signaling Domain Configuration Guide.
Expand OCSB, Processing Tier and Interworking Modules.
Create and configure an IM_OCF Interworking Module.
For more information on the configuration settings, see the discussion on configuring IM-OCF in Oracle Communications Service Broker Processing Domain Configuration Guide.
Configure the Service Broker Orchestration Engine.
In the navigation pane, expand OCSB and then Processing Tier.
Click Orchestration Engine.
Configure the Orchestration Engine to route traffic between your Service Broker and Oracle Communications Billing and Revenue Management (BRM). You do this by creating an Initial Filter Criteria (IFC) XML file that specifies the routing criteria.
For more information on Orchestration Engine configuration, see the discussion on configuring the Orchestration Engine and the discussion on initial filter criteria in Oracle Communications Service Broker Processing Domain Configuration Guide.
Be sure your Diameter charging server and media servers are running before you start generating traffic.
This section explains how to enable offline charging for your SVC services.
The Service Broker SVC application uses connections in the Signalling Tier to exchange messages with external Diameter servers. Therefore, to enable offline charging, you must configure the Diameter server connection settings in the Signaling Tier. You also configure the network-facing IMs and orchestration rules in the Processing Tier that integrate the VPN application with the external Diameter server.
The Diameter AVPs that are generated by the SVC application are defined by MBean attributes. To implement Rf charging, you must add the AVP definitions that are specific to VPN services to the common set of Service Broker AVP definitions.
To add the SVC AVPs to the common set of AVP definitions, you use the Service Broker scripting engine. The scripting engine is a configuration tool that allows you to access and modify Service Broker MBeans from a shell script.
You use the scripting engine by running the script.sh
script, passing it the command file appropriate for your deployment. The domain configuration must not be locked by another process when you run the script, such as by the Administration Console user interface.
Note:
For complete information about using the Service Broker scripting engine, see Oracle Communications Service Broker System Administrator's Guide.This section assumes that you have:
Configured a Diameter-based charging server (such as Oracle Communications BRM) and know its IP address and listening port number.
For more information on setting up BRM see the Oracle Communications BRM documentation set.
Installed Service Broker.
Started a domain and Managed Server.
Followed the instructions in "Setting Up Social Voice Communicator" and set up the processing and signalling tiers for SVC services.
To set up Diameter Rf charging for SVC services:
Configure SSU Diameter.
Specifically, define Service Broker as the Diameter node, and define at least one Diameter peer. You need to specify the IP address, hostname, listening port number, and supported protocol for each node and peer.
For more information on the SSU Diameter configuration settings, see the discussion on configuring Diameter Signaling Server units in Oracle Communications Service Broker Signaling Domain Configuration Guide.
Ensure that the SSU Diameter, Diameter Nodes, Routes, Application ID field is set to3 for Rf charging.
Copy the AVP definitions appropriate for your deployment to the common signalling tier MBean using the script.sh
script, passing it the appropriate command file, as follows:
For SVC only, run the script with the define_svc_avps.xml command file, as follows:
./script.sh scripts/define_svc_avps.xml
For SVC and VPN, run the script with the define_svc_vpn_avps.xml command file, as follows:
./script.sh scripts/define_svc_vpn_avps.xml
The script copies AVP definitions to the common Service Broker MBean:
oracle:type=oracle.axia.cm.ConfigurationMBean,name=oracle.axia.protocol.diameter.common,version=1.0.0.1,name0=diameterCommonConfig
Note:
For a VPN-only implementation, you use the AVP script command file named define_vpn_avps.xmlNote that running both the VPN-specific and SVC-specific script command files does not constitute a substitute for running the define_svc_vpn_avps.xml script command file, because the service-specific scripts overwrite each other's settings.
That is, if deploying both SVC and VPN services, you must run the script with the define_svc_vpn_avps.xml file only.
Not all Rf configuration settings are available from the Service Broker Administration Console GUI. If you use the Administration Console, you also need to do some configuration by using an MBean Browser such as the Service Broker Java Monitoring and Management Console.
SVC supports the Diameter Rf AVPs listed in the following sections:
At the following prompt, enter the local path to the Service Broker processing domain:
Enter a value for parameter 'domain.path':
The path should be the directory in which the initial.zip file and other domain artifacts are located. For example
Enter a value for parameter 'domain.path': /home/oracle/ocsb60/domains
Start and connect to the Administration Console process with a JMX MBean client.
Configure event-based charging by navigating to the following MBean:
oracle:type=oracle.axia.cm.ConfigurationMBean,name=oracle.axia.apps.svc.diametersvc,version=1.0.0,name0=diameterConfig,name1=enableChargingEventRf
Set the enableChargingEvent Rf attribute to true. The default setting is false.
Configure session-based charging by navigating to this MBean:
oracle:type=oracle.axia.cm.ConfigurationMBean,name=oracle.axia.apps.svc.diametersvc,version=1.0.0,name0=diameterConfig,name1=enableChargingSessionRf
Set the eventChargingSessionRf attribute to true. The default setting is false.
In the Service Broker Signaling Domain, configure connectivity to the external Diameter charging server to which you want to send accounting reports.
For instructions on how to perform this configuration, see the information about configuring Diameter Signaling Server Units in Oracle Communications Service Broker Signaling Domain Configuration Guide.
The Service Broker SVC services now generates accounting request messages based on the service activities, which are transmitted to the charging server specified in the Service Broker Signalling Tier configuration.
The following sections list the AVPs generated by the SVC services.
The AVPs defined by the Diameter base protocol (RFC3588) and Diameter Credit-Control (RFC 4006) that SVC supports are listed below.
The definitions of the attributes as generated by SVC conform to their definitions as stipulated by the public specification.
For complete information on the definition or purpose of a specific AVP, see the RFC 3588 Diameter Base Protocol.
Session-Id
Origin-Host
Origin-Realm
Destination-Host
Destination-Realm
Auth-Application-Id
Service-Context-Id
CC-Request-Type
CC-Request-Number
User-Name
The AVPs defined by 3GPP TS 32.299 Diameter Base Protocol that SVC supports are listed below.
The definitions of the attributes as generated by SVC conform to their definitions as stipulated by public specification.
For complete information on the definition or purpose of a specific AVP, see the 3GPP TS 32.299 specification.
Origin-State-Id
Event-Timestamp
Service-Information
Service-Information.Subscription-Id
Service-Information.Subscriber-Id.Subscription-Id-Type
Service-Information.Subscriber-Id.Subscription-Id-Data
Service-Information.Subscription-Id
Termination-Cause
Requested-Action
Multiple-Services-Indicator
Multiple-Services-Credit-Control
Used-Service-Unit
Reporting-Reason
CC-Time
Service-Identifier
Table 3-1 lists the non-standards based Diameter Ro AVPs that Service Broker uses for passing SVC service information. See "Configuring Online Charging for SVC Services" for instructions on how to implement these AVPs.
Table 3-1 SVC Diameter Ro Optional AVPs
AVP Name | AVP Code | Type | Description |
---|---|---|---|
Service-Information.IMS-Information |
876 |
Grouped |
Transmits additional 3GPP service-specific information elements not covered by existing AVPs. |
IMS-Information.Role-of-node |
829 |
Enumerated |
Specifies the role of the Application Server. Can be one of the following values: 0: ORIGINATING_ROLE The Application Server serves the calling party. 1: TERMINATING_ROLE The Application Server serves the callee. |
IMS-Information.Event-Type |
823 |
Grouped |
Includes information about the type of chargeable telecommunication service or event for which the accounting-request and/or credit control request messages are generated. |
Event-TypeSIP-Method |
824 |
UTF8String |
The SIP method name (for example, INVITE or UPDATE) that generated the accounting request. If the request is a One-number Service request, one of the following values is also returned: 1: Join - interim REINVITE message 2: Leaving - Interim BYE message |
IMS-Information.Node-Functionality |
862 |
Enumerated |
The node functionality identifier. |
IMS-InformationUser-Session-ID |
830 |
UTF8String |
Contains the session identifier (the caller ID of the initial request). |
IMS-Information.Time-Stamps |
833 |
Grouped |
Contains the times of the initial SIP request and the response. |
Time-Stamps. SIP-Request-Timestamp |
834 |
Timestamp |
The SIP request timestamp in UTC format. |
Time-Stamps. SIP-Response-Timestamp |
835 |
Timestamp |
The SIP request response timestamp in UTC format. |
IMS-Information Service-ID |
855 |
UTF8String |
Identifies the service that the MRFC is hosting. For conferences, the conference ID is used. |
IMS-Charging-Identifier |
841 |
UTF8String |
The IMS charging identifier (ICID) generated by the IMS node for the SIP session. |
IMS-Information Calling-Party-Address |
831 |
UTF8String |
The address (SIP URI or TEL URI) of the calling party (Public User Identifier or Public Service Identity). |
IMS-Information Called-Party-Address |
832 |
UTF8String |
The address of the callee. This is either the SIP URI or TEL URI from the initial request. |
IMS-InformationRequested-Party-Address |
1251 |
UTF8String |
Contains the address (SIP URI or TEL URI) of the of the original target of the SIP request (Public User Identifier or Public Service Identity). Only present if different from the Called-Party-Address parameter (832). |
IMS-InformationService-Specific-Info |
1249 |
Grouped |
Contains the service-specific data if provided by the Application Server or a PCEF (for pre-defined PCC rules). |
Service-Specific-InfoService-Specific-Data |
863 |
UTF8String |
Can be one of the following values: PLACE_CALL TAKING_CALL CLIDK_TO_DIAL VOICEMAIL GROUP_SERVICE ONE-THE-FLY_CONFERENCING |
Service-Specific-InfoService-Specific-Type |
1257 |
Unsigned32 |
Contains the type of service-specific data: 0: SVC |
IMS-InformationSDP-Media-Component |
843 |
Grouped |
Contains the media (SDP) used for a session. This is taken from the START message of the initial ACR. If the media changes, it is taken from an interim ACR. |
SDP-MediaComponentSDP-Media-Name |
844 |
UTF8String |
Contains the value for m= line in the SDP data of the 200 OK message. |
SDP-Media-ComponentSDP-Media-Description |
845 |
UTF8String |
Contains the value for the attribute-line for a media component. Specifies the media described in the SDP-Media-Name AVP. |
IMS-InformationCause-Code |
861 |
Integer32 |
Contains the code (from 3PP TS 32.299) for the Accounting-request [stop] and/or Account-request [event]. Values less than 0 are used for success codes; values greater than 1 are used for failure codes. |
The AVPs defined by RFC 3588 Diameter Base Protocol that SVC uses are listed below.
The definitions of the attributes as generated by SVC conform to their definitions as stipulated by the public specification.
For complete information on the definition or purpose of a specific AVP, see the RFC 3588 Diameter Base Protocol.
Session-Id
Origin-Host
Origin-Realm
Destination-Host
Destination-Realm
Accounting-Record-Type
Accounting-Record-Number
Acct-Application-Id
Acct-Interim-Interval
User-Name
Event-Timestamp
The AVPs defined by 3GPP TS 32.299 Diameter Base Protocol that SVC uses are listed below.
The definitions of the attributes as generated by SVC conform to their definitions as stipulated by public specification.
For complete information on the definition or purpose of a specific AVP, see the 3GPP TS 32.299 specification.
Service-Context-Id
Service-Information
Service-Information.Subscription-Id
Service-Information.Subscriber-Id.Subscription-Id-Type
Service-Information.Subscriber-Id.Subscription-Id-Data
Service-Information.IMS-Information
IMS-Information.Role-of-node
IMS-Information.Event-Type
Event-Type.SIP-Method
IMS-Information.Node-Functionality
IMS-Information.User-Session-ID
IMS-Information.Time-Stamps
Time-Stamps.SIP-Request-Timestamp
Time-Stamps.SIP-Response-Timestamp
IMS-Information.Service-ID
IMS-Charging-Identifier
IMS-Information.Calling-Party-Address
IMS-Information.Called-Party-Address
IMS-Information.Requested-Party-Address
IMS-Information.Service-Specific-Info
Service-Specific-Info.Service-Specific-Data
Service-Specific-Info.Service-Specific-Type
IMS-Information.SDP-Media-Component
SDP-Media-Component.SDP-Media-Name
SDP-Media-Component.SDP-Media-Description
IMS-Information.Cause-Code