This document describes the Call Management Records (CMR) enhancements on Cisco Unified Communications Manager (CUCM) 12.5.
Cisco recommends that you have knowledge of these topics:
CUCM version 12.5
Enable Call Details Record (CDR) and CMR on CallManager
The information in this document is based on Cisco Call Manager version 12.5
The information in this document was created from the devices in a specific lab environment. All of the devices used in this document started with a cleared (default) configuration. If your network is live, ensure that you understand the potential impact of any command.
CUCM produces two types of records, which store call history and diagnostic information:
Call Detail Records- Data records contain information about each call which is processed by CallManager.
Call Management Records - Data records contain the Quality of Service (QoS) or diagnostic information about the call, also referred to as diagnostic records.
Both CDRs and CMRs together are referred to as CDR data. CDR data provides a record of all calls that have been made or received by users of the CallManager system. CDR data is useful primarily to generate the billing records; however, it can also be used to track call activity, diagnose certain types of problems and capacity plan.
CMRs contain information about the amount of data sent and received, jitter, latency, and lost packets. Initially, CMR was generated for internal calls, now CUCM can generate CMR for calls over SIP trunk.
SIP Trunk receives the call statistics in P-RTP-Stat header in the BYE message or in the 200 OK messages (response to BYE message) from CUBE or IOS Gateway. These statistics include Real-time Transport Protocol (RTP) packets sent or received, total bytes sent or received, the total number of packets that are lost, delay jitter, round-trip delay, and call duration.
The format of P-RTP-Stat Header:
P-RTP-Stat: PS=<Packets Sent>, OS=<Octets Sent>, PR=<Packets Recd>, OR=<Octets Recd>,PL=<Packets Lost>, JI=<Jitter>, LA=<Round Trip Delay in ms>, DU=<Call Duration in seconds>
It is the format of CUBE/SIP IOS gateway RTP Statistics reporting. CUCM SIP Trunk side for CMR support is limited to that format of RTP Statistics.
After BYE or 200OK for BYE is received, SIPCdpc parses the P-RTP-Stat header and populates the corresponding CMR fields based on Key values pairs in P-RTP-Stat header.
SIPCdpc sends the Diagnostic record to EnvProcessCdr with populated CMR data, and EnvProcessCdr creates a flat file and dumps CMR data into it.
No new fields are added to the CMR as part of this feature. Existing format to be maintained.
Any fields in the CMR that are not relevant for trunk side metrics (like DirectoryNumber etc.) to be left at null, similarly for metrics not received from CUBE (e.g. varVQMetrics or video metrics) to be left at null.
If the P-RTP-Stat header is not received from the CUBE for BYE message or 200 OK (response to BYE), there will be no CMR record written for the SIPTrunk.
Prerequisite from CUBE to support this feature / provide call statistics :
Cisco IOS Release 15.1(3)T or a later release must be installed and should run on your Cisco Unified Border Element.
Cisco IOS XE Release 3.3S or a later release must be installed and should run on your Cisco ASR 1000 Series Router.
Step 1. CMR is Enabled via Call Manager service parameters under :
Navigate to System > Service Parameter.
Select a server from the drop-down box and then select the Call Manager service
Step 2. Set the Call Diagnostics Enabled parameter to either:
Enabled Only When CDR Enabled Flag is True (generate CMRs only when the CDR Enabled Flag service parameter is set to True).
Enabled regardless of CDR Enabled Flag (generates CMRs without regard to the setting in the CDR Enabled Flag service parameter).
Since PS and PR values are out of range(values greater than 2^32-1), these out of range values are replaced with max value i.e. 2^32-1(4294967295).
Allowed Keys and Range of Values in the P-RTP-Stat Header
This feature is not supported for SME call flows:
Upon receiving call statistics from CUBE/IOS GW on SME,CUCM will generate CMR (provided CMR is enabled) for trunk side, but it won’t be able to forward call statistics to other nodes in outgoing BYE or 200OK for BYE.
Sample Call flow: Phone1 >> CUBE/IOS GW>> SME >> CUCM1 >> Phone2 For the above call scenario, SME will generate the CMR for trunk side pointing to CUBE . These statistics will not be forwarded to leaf node. For Phone2, CMR will be recorded on leaf node.