These Application Notes describe the configuration steps required for Sonus Session Border Controller (SBC) to interoperate with the SIP recording server (NICE server) using SIP trunks. Sonus SBC is a robust solution that integrates security, call control, Quality of Service, advanced media services and switching, all within a compact platform. The SBC functionality is compliance tested utilizing a SIP trunk to NICE recorder.
The objective of this document is to describe the procedure to be followed during IOT of SBC with NICE recorder. This includes identifying the test environment, tools required for testing, network topology, test points, risks involved in testing and scope of the testing.
The interoperability compliance testing focuses on verifying inbound and outbound call flows between Sonus SBC and the NICE recorder using TCP.
This is a technical document intended for telecommunication engineers with the purpose of configuring both the Sonus SBC and the third-party product. Navigating the third-party as well as the Sonus SBC Command Line Interface (CLI) is required. Understanding the basic concepts of TCP/UDP, IP/Routing and SIP/RTP are also required to complete the configuration and any necessary troubleshooting.
Session recording is a capability which can be utilized for various purposes: to comply with regulation, to monitor quality of service of representatives and to store call information for quality analysis. Sonus SBC currently supports proprietary SIP recording interfaces like NICE and MCT. This feature aims to support IETF standard SIP recording interfaces, namely SIPREC (SIP recording).
As per SIPREC architecture, SBC acts as Session Recording Client (SRC) and acts as RTP translator. The NICE recorder acts as a Session Recording Server (SRS). As a SRC, SBC initiates SIP recording session (RS) towards Session Recording server (SRS).
The following equipment and software are used for SIPREC configuration.
Software Information
Equipment | Software Version | |
---|---|---|
Sonus Networks | Sonus SBC | V05.01.01-R000 |
Third-party Equipment | NICE | NICE recorder 4.1.47 |
The following reference configuration shows connectivity between the NICE recorder and the Sonus SBC.
Reference Configuration
For any questions regarding this document or the content herein, please contact your maintenance and support provider.
This section provides a look at the NICE recorder configuration used during compliance testing. The NICE recorder is typically configured for customers by NICE. The screen shots and partial configuration shown below, supplied by NICE, are provided only for reference.
This section describes NICE components.
• CAPIC (CAPI Gate Interaction Correlator): A NICE component that correlates and combines the data of calls from different switches. The CAPIC is located on the same machine as the Interactions Center.
• NICE Interactions Center: The NICE Interactions Center receives the call status, monitors call events, and stores them in its database for other system functions such as queries, reports, etc. and uses them when interaction-based recordings are implemented to determine whether to record a call.
• NICE VoIP Logger: A Logger that was set up for Active Recording and is used in an Active VoIP Recording environment. The NICE VoIP recording solution enables customers to effectively capture, evaluate, analyze and improve multimedia interactions taking place on an IP network. It provides VoIP recording solutions to customers that are deploying IP telephony networks, enabling them to enhance customer experience management over converging networks. Once the VoIP audio is recorded, it can be saved, archived, queried, and played back as easily as analog or digital recorded audio.
• Voice Recording SIP Proxy (VRSP): The VRSP functions as a SIP Proxy. It is used to set up SIP-based calls between the SBC and the NICE VoIP Logger. It is recommended to deploy VRSP redundancy in order to guarantee recording.
All configuration of VRSP, CAPIC, NICE Interaction center and CAPIC is done by NICE.
NICE Components
The interaction between the Sonus SBC and the NICE recorder is described below.
• The SBC receives an incoming call and queries PSX for route.
• The SBC sends an INVITE to the VRSP.
• The VRSP sends the SBC a 200 OK SIP response with the Logger’s SDP.
• The SBC routes the RTP streams to the Logger and recording starts.
• The VRSP sends a START message to the CAPIC (via the CTI Driver). The START message contains the UDI and UCID for the call.
• The CTI server (AES/TSAPI) sends an ESTABLISHED event to the CAPIC (via the CTI Driver). The ESTABLISHED event contains the DN, UCID and other call details (e.g., Call ID, participants, etc.).
• The CAPIC correlates the calls received from the VRSP and CTI server. The correlation is performed based on the UCID in both calls.
• The CAPIC sends the Interactions Center the correlated interaction, including the relevant UDI and DN received from the VRSP and the CTI server.
Currently, NICE recorder supports three redundancy methods:
SBC can use the SIP session timer method to detect that a SRS recording session failed. SRC may use non supported SIP methods to detect failures by accepting “Non implemented” response.
Currently, we support the Active/Standby with fail over model.
For enabling NICE recorder for recording:
Step 1: STOP CTI services (yellow icon in the system tray with CTI letters > right-click > StopNICE Integrations Dispatch service).
Step 2: Remove all log file under D:\Program Files\NICE Systems\CTI\Log (skip the files, which are in use).
Step 3: START CTI services (yellow icon in the system tray with CTI letters > right-click > StopNICE Integrations Dispatch service).
After 3 minutes initiate a call now call should be recorded
Ensure 'TCPConnectionClientCAPI.dll, TCPServerAPI.dll' files are present at D:\Program Files\NICE Systems\CTI\ in Nice server (present by default) for recording on TCP.
To play back recorded message.
Configuration of NICE GUI
This section provides a look into the Sonus SBC configuration used during compliance testing. The Sonus SBC is typically configured for customers by Sonus Networks. The screen shots and partial configuration shown below, supplied by Sonus Networks, is provided only for reference. Other configurations are possible.
SIPREC features normally use PSX/EPSX for routing. We must make a separate TG with separate zone and sipSigport and attach that to egress IP interface group. This sip trunk is toward NICE recorder.
In PSX, we must configure RECORDER PROFILE and CALL RECORDING CRITERIA along with Basic call configuration. Below are the additional/ special configuration fields required apart from Basic PSX configuration.
Apart from Basic configuration, the following configuration is required.
1. Recorder Profile: Provide NICE recorder, primary and secondary IPV4 or IPV6 address and port (5060). Also, mention the NICE TG name. The name of NICE TG created in SBC and PSX should be the same, otherwise recording would not be initiated toward NICE. Transport type must be set to TCP.
Recorder Profile
2. Call Recording Criteria: Provide call criteria for recording which you wish to record, like calling number, called number, ingress and egress TG, SBC name, the leg you want to record, either ingress or egress. Recorder type should be “SIPRec”. Enable the criteria. When a call is made, it shall be recorded if it falls under criteria.
All recorder information is known to SBC via PSX/EPSX.
Call Recording Criteria
set addressContext default ipInterfaceGroup LIF1 ipInterface pkt_a_v4v6 ceName BF026 portName pkt0 ipAddress 10.7.17.51 prefix 16 altIpAddress fd00:10:6b21:2007::17:51 altPrefix 48 set addressContext default ipInterfaceGroup LIF1 ipInterface pkt_a_v4v6 mode inService state enabled set addressContext default ipInterfaceGroup LIF2 ipInterface pkt_b_v4v6 ceName BF026 portName pkt1 ipAddress 10.7.18.60 prefix 16 altIpAddress fd00:10:6b21:2007::18:60 altPrefix 48 set addressContext default ipInterfaceGroup LIF2 ipInterface pkt_b_v4v6 mode inService state enabled commit
set addressContext default zone ZONE1 sipSigPort 3 ipAddressV4 10.7.17.51 portNumber 5060 transportProtocolsAllowed sip-udp,sip-tcp ipAddressV6 fd00:10:6b21:2007::17:51 ipInterfaceGroupName LIF1 set addressContext default zone ZONE1 sipSigPort 3 mode inService state enabled set addressContext default zone ZONE2 sipSigPort 5 ipAddressV4 10.7.18.60 portNumber 5060 transportProtocolsAllowed sip-udp,sip-tcp ipAddressV6 fd00:10:6b21:2007::18:60 ipInterfaceGroupName LIF2 set addressContext default zone ZONE2 sipSigPort 5 mode inService state enabled commit
set addressContext default zone NICE_ZONE id 10 sipSigPort 12 state enabled ipAddressV4 10.7.18.62 ipAddressV6 fd00:10:6b21:2007::18:62 portNumber 5060 transportProtocolsAllowed sip-udp,sip-tcp ipInterfaceGroupName LIF2 siprec enable commit
Configure IP Peer on PSX.
1. Use the following commands to configure the SIP Trunk Group on SBC.
set addressContext default zone ZONE1 sipTrunkGroup PER47639s_INT_TG media mediaIpInterfaceGroupName LIF1 set addressContext default zone ZONE1 sipTrunkGroup PER47639s_INT_TG ingressIpPrefix 10.54.80.200 32 set addressContext default zone ZONE1 sipTrunkGroup PER47639s_INT_TG state enabled mode inService set addressContext default zone ZONE1 sipTrunkGroup PER47639s_INT_TG media recordable enable set addressContext default zone ZONE2 sipTrunkGroup PER47639s_EXT_TG media mediaIpInterfaceGroupName LIF2 set addressContext default zone ZONE2 sipTrunkGroup PER47639s_EXT_TG ingressIpPrefix 10.54.80.200 32 set addressContext default zone ZONE2 sipTrunkGroup PER47639s_EXT_TG state enabled mode inService set addressContext default zone ZONE2 sipTrunkGroup PER47639s_EXT_TG media recordable enable commit
2. Configure Trunk Group on PSX (Same names must be given to TG as above in PSX).
Configure Trunk Group on PSX
3.Use the following commands to configure the SIP Trunk Group for NICE RECORDER on SBC.
set addressContext default zone NICE_ZONE sipTrunkGroup PER47639s_NICE_TG media mediaIpInterfaceGroupName LIF2 set addressContext default zone NICE_ZONE sipTrunkGroup PER47639s_NICE_TG ingressIpPrefix 10.54.80.7 32 set addressContext default zone NICE_ZONE sipTrunkGroup PER47639s_NICE_TG state enabled mode inService commit
4. Configure Trunk Group on PSX for NICE RECORDER (Same names must be given to TG as above in PSX).
.Configure Trunk Group on PSX for NICE RECORDER
Configure IP Signalling Profile on PSX.
Configure IP Signalling Profile on PSX.
Configure Packet Service Profile ID Group on PSX
Configure Packet Service Profile ID Group on PSX
Configure PSP on PSX
Configure PSP on PSX
set addressContext default staticRoute 10.54.80.200 32 10.7.1.1 LIF1 pkt_a_v4v6 preference 100 set addressContext default staticRoute 10.54.80.200 32 10.7.1.1 LIF2 pkt_b_v4v6 preference 100 set addressContext default staticRoute 10.54.80.7 32 10.7.1.1 LIF2 pkt_b_v4v6 preference 100 set addressContext default staticRoute 10.54.80.8 32 10.7.1.1 LIF2 pkt_b_v4v6 preference 100 commit
This section provides the tests that are performed to verify configuration of the NICE recorder as SIPREC server and the Sonus SBC.
The following table lists a summary of the cases tested.
Test Results
Sl No | ID | Test Case | P/F | CQ |
1 | 894177 | Start/Stop a call recording via CLI - Call with GCID exists in Communication session and NICE SRS IPV4 Address in TCP | P | |
2 | 894186 | PSX shall allow the called and calling party numbers in the recording criteria to be configured as a prefix | P | |
3 | 894187 | Verify recording of session before/after consultative transfer Using REFER | P | |
4 | 894188 | Verify recording of session for a call transcoded at ingress | P | |
5 | 894189 | SDP shall include the same Codec as being used original communication Session | P | |
6 | 894190 | Re-negotiation of codec in CS - Pass through Initially and transcoded after re-negotiation through ReInvite | P | |
7 | 894191 | Re-negotiation of codec in CS - Pass through Initially and transcoded after re-negotiation through UPDATE | P | |
8 | 894192 | In call forwarding unconditional, If C comes under recording criteria | P | |
9 | 894201 | If the original call is forwarded No answer. If new call comes under recording criteria . | P | |
10 | 894202 | REFER is received in the context of a recording session | P | |
11 | 894219 | IP interworking scenarios | P | |
12 | 894220 | Direct Media scenario | P | |
13 | 894221 | SIP-I to SIP-I call scenario | P | |
14 | 894222 | Re-negotiation of codec in CS - Pass through Initially and transcoded after re-negotiation through ReInvite with mismatch codecs. | P | |
15 | 894223 | Session terminate by calling party which is not in recording criteria.Test case description | P | |
16 | 894224 | UE initiating call with \'Supported: siprec\' header | P | |
17 | 894225 | A-party uses codec that are not supported in the SRS TG. | P | |
18 | 894226 | Call hold scenario for Rx Stream | P | |
19 | 894227 | Call hold scenario for Tx Stream | P | |
20 | 895062 | To confirm SBC initiates SIP-REC session in TCP for a call that is established with UDP as transport. | P | |
21 | 895063 | To Verify the recording session established in ipv6 when communication session is established in ipv4 | P | |
22 | 895064 | To verify the recording session for an inband DTMF call | P | |
23 | 895065 | To verify the recording session for an rfc2833 call | P | |
24 | 895066 | To verify the recording session for an dtmf relay call. | F | SBX-49451 |
25 | 895067 | To confirm the recording for G711 Fax Passthrough call. | P | |
26 | 895069 | Recording for a call involving fall back from transcode to passthru with re-invite | P | |
27 | 895070 | To verify the recording for early media case with PRACK at ingress and egress including 200 ok with different sdp | P | |
28 | 895071 | Fall back from direct media to passthru in a call transfer scenario with SIPREC | P | |
29 | 895072 | Fall back from passthru to direct media in a call transfer scenario with SIPREC. | P | |
30 | 895073 | Session refresh with UPDATE involving session recording | P | |
31 | 895074 | To confirm a sip recording for a basic TLS/SRTP call | P | |
32 | 895075 | Sip recording for a TLS call involving the change in cryptosuite | P | |
33 | 895076 | A Basic call including srtp on one side and rtp on the other side with sip recording | P | |
34 | 895077 | A Basic call with indialog notify with xml body sent form UAC. | P | |
35 | 895078 | An indialog Info and message with xml body sent from uas to uac. | P | |
36 | 895079 | A Basic call involving 302 re-direction from target number with siprec. | P | |
37 | 895080 | A Basic call involving 302 re-direction to target number with siprec. | P | |
38 | 895081 | A basic call with rtcp flag enabled on both ingress and egress including sip recording. | P | |
39 | 895082 | Basic call including late media with siprec. | P | |
40 | 895174 | A Basic video call with audio recording. | P | |
41 | 895175 | Fall back of a video call to audio call through RE-INVITE | P | |
42 | 895176 | Audio call upgraded to Video through re-invite with audio recording | P | |
43 | 895177 | siprec Failover from primary to secondary recording server. | P | |
44 | 895178 | siprec call with call duration set for a specific time in PSX. | P | |
45 | 895179 | Call recording based on trunk group. | P | |
46 | 895181 | Transport protocol for recording is configured as TCP in PSX where as its not configured in SBC sipsigport | P | |
47 | 895187 | Basic call with LI (which uses splitter) simulator and SIP Recording where LI taking the priority. | P | |
48 | 895189 | Performing switch over while a call is being recorded. | P | |
49 | 897948 | A Basic GW-GW call with sip recording | P |
This Application Notes describe the configuration steps required for Sonus SBC to successfully interoperate with SIPRec server - NICE recorder. All feature and service test cases have been completed and passed with the exceptions/observations noted in Section Phase III- Inter op testing.