In this entry we will go through an specific situation that could be required when implementing SIPRec. Let’s start checking our basic implementation in the following diagram:
Any normal scenario, recording is optional, giving priority to the communication between the User Agents (represented in the diagram above as a mobile phone and an agent registered in an IP PBX). But there are a few scenarios where recording is a MUST (financial institutions and strict compliance recording applications may require this) and if the call cannot be recorded, better to be rejected with an answer that can let the origination to overflow that call to another center (503 Service Unavailable is the best answer for this).
Oracle SBCs can accomplish the previous with the following setting session-recording-required (used in session-agent, realm, or sip-interface level), but before testing, lets first understand what the behavior with those options will be. The following images display and explain the behavior expected.
As previously mentioned, session-recording-required set to disabled was already tested and analyzed in Oracle ISR – Lab Setup – Analyzing session recording entry. We will focus on enabling this feature:
After the changes above activated:
Now let’s test with 2 scenarios:
- RSS Server up and running:
As previously mentioned after receiving the Invite from the External realm, having the session-recording-required enabled , SIPRec Invite is first created and sent to the RSS server and after receiving the 200 OK from the RSS is when the original INVITE is then sent to the Internal realm/softphone. The 200 OK received from the RSS server is the indication that the Recording Session is now established proceeding to establish the call or Communication Session.
2. RSS Server down (server was turned off):
In this new attempt, the flow is exactly the same, External realm is generated and sent to the SBC, SIPRec Invite is first created and sent to the RSS, but in this case an any message is received for that Invite, transaction is timed out and SBC assumes recorder is down. As the recording is required to proceeds with the original communication, providing a 503 Service Unavailable final answer to the External realm/softphone who originally sent the Invite.
This concludes this entry.