Appearance
Troubleshooting Call Telemetry Greeting Injection
Overview
When Call Telemetry policies request greeting injection (recording warnings, announcements), Cisco CallManager (CUCM) uses Annunciator services to play audio before connecting calls. This guide covers the most common issue: greetings that never play due to missing or misconfigured Media Resource Group Lists (MRGL).
Symptom
Call proceeds normally, but the recording warning or announcement never plays before call connection.
Debug Trace Analysis
Required Log Configuration: Before troubleshooting, ensure proper logging is enabled in CUCM:
Set Detailed Level Logging for these services:
- Cisco CallManager (for call processing and media resource allocation)
- Cisco IP Voice Media Streaming Application (for Annunciator service details)
Collect Logs Using RTMT:
- Use Real-Time Monitoring Tool (RTMT) to collect traces
- Set collection for the relevant time period when issue occurs
- Download SDL traces for analysis
What to Look For
In your SDL trace (example trace file), look for these key indicators:
txt
00025243.001 | ... xacml (<Response>... <Decision>Permit</Decision> ... <greeting identification="RecordingWarning_00038"/> ...)
00025261.000 | SsInsertMediaReq ... AnnList.tone38 ... MediaResourceType7 annPlayMode1
00025267.001 | MediaResourceManager::sendAllocationResourceErr - ERROR - no Ann device configured
00025267.002 | GenAlarm: MediaResourceListExhausted ... MediaResourceListName : NULL_LIST MediaResourceType : 7
00025271.000 | InsertMediaErr |...| InsertMediaError= 7
Key Indicators:
- CURRI permits the call and requests greeting
RecordingWarning_00038
- CUCM attempts to insert Annunciator (MediaResourceType 7)
- Allocation fails: "no Ann device configured"
- Result: Call resolves to
NULL_LIST
MRGL causingInsertMediaError=7
Quick Diagnosis Command
This grep command can help quickly identify the relevant SDL trace lines:
bash
grep -E "greeting identification|AnnList\.tone|MediaResourceManager::sendAllocationResourceErr|MediaResourceListExhausted|NULL_LIST|InsertMediaErr" ccm-sdl-trace.txt
Step 1 - Confirm IP Voice Media Streaming Service Activated
First, ensure the Cisco IP Voice Media Streaming Application is running on at least one CUCM node.
Navigate to Cisco Unified Serviceability
- Tools → Control Center - Feature Services
Enable Annunciator Service
- Find "Cisco IP Voice Media Streaming App"
- Click Activate
!
Step 2 - Create Media Resource Group (MRG)
Create an MRG that includes your Annunciator resources.
Navigate to CUCM Administration
- Media Resources → Media Resource Group
Create New MRG
- Click "Add New"
- Name:
MRG_Annunciators
(or your naming convention) - Description: "Annunciator resources for greeting injection"
Add Available Media Resources
- Move Annunciator resources from Available to Selected
- Ensure resources are listed in priority order
Step 3 - Create Media Resource Group List (MRGL)
Create an MRGL and place your Annunciator MRG first in the priority order.
Navigate to CUCM Administration
- Media Resources → Media Resource Group List
Create New MRGL
- Click "Add New"
- Name:
MRGL_WithAnnunciators
(or your naming convention) - Description: "MRGL including Annunciators for greetings"
Add Media Resource Groups
- Move
MRG_Annunciators
to Selected (first position) - Add other required MRGs (Conference Bridges, Transcoders) below
- Move
Priority Matters
The MRG containing Annunciators must be first in the MRGL for greeting injection to work properly.
Step 4 - Assign MRGL to Devices
Assign the new MRGL to devices that need greeting capabilities.
For SIP Trunks (Most Common)
- Navigate to Device → Trunk
- Select your SIP trunk
- Find Media Resource Group List
- Change from default to
MRGL_WithAnnunciators
- Change from default to
- Apply Config and Reset
For Device Pools (Affects All Devices)
- Navigate to System → Device Pool
- Select the Device Pool
- Update Media Resource Group List
- Change to
MRGL_WithAnnunciators
- Change to
- Save and Reset Affected Devices
For Individual Phones (If Needed)
- Navigate to Device → Phone
- Select specific phone
- Override Media Resource Group List
- Reset Phone
Step 5 - Verify Codec Compatibility
Ensure codec compatibility between devices and media resources.
Check Codec Configuration
Verify G.711 (ulaw/alaw) is allowed between:
- Calling device ↔ Annunciator node
- Called device ↔ Annunciator node
If G.711 isn't available, add Transcoders to your MRG:
- Include Transcoder MRG in your MRGL
- Place Transcoder MRG after Annunciator MRG
Step 6 - Test and Verify
After completing the configuration:
Reset Affected Devices
- Reset SIP trunks
- Reset phones (if Device Pool MRGL changed)
- Wait for full registration
Test Greeting Injection
- Make a test call that triggers your greeting policy
- Verify audio plays before call completion
Successful Configuration Looks Like:
txt
# In SDL traces, you should see:
MrmAllocateAnnResourceReq # Resource allocation request
AnnResourceAllocated # Successful allocation
InsertMediaReq # Media insertion request
# No MediaResourceListExhausted errors
# No InsertMediaErr=7 messages
Common Issues and Solutions
"Media Resource List Group - NULL_LIST Errors"
Check Device Pool Inheritance:
- Verify the calling device's Device Pool has correct MRGL
- SIP trunks often inherit from their Device Pool
- Phone extensions inherit from their Device Pool
Verify Service Activation:
- Confirm Annunciator service is running on the CUCM node
- Check service shows as Active in Serviceability
"Annunciator Allocates But No Audio"
Audio File Issues:
- Verify greeting file exists in CUCM Announcements
- Check file is uploaded to all CUCM nodes in cluster
- Ensure file format matches CUCM requirements (G.711, 8kHz)
"Works Sometimes"
Resource Exhaustion:
- Monitor Annunciator resource usage during peak hours
- Consider adding more Annunciator services on additional nodes
- Check if other applications are consuming Annunciator resources
Topology Dependencies:
- Verify calling device has consistent MRGL assignment
- Check for region/location restrictions affecting media resource selection
Verification
After completing the configuration, test the setup:
Reset Affected Devices
- Reset SIP trunks and phones
- Wait for full registration
Test Greeting Injection
- Make a test call that triggers your greeting policy
- Verify audio plays before call completion
Success indicators in SDL traces:
txt
MrmAllocateAnnResourceReq # Resource allocation request
AnnResourceAllocated # Successful allocation
InsertMediaReq # Media insertion request
# No MediaResourceListExhausted errors
# No InsertMediaErr=7 messages
Still Having Issues?
If problems persist after following this guide:
Review Configuration
- Double-check all MRGL/MRG assignments
- Ensure Annunciator service is running on required nodes
- Ensure files are uploaded to all nodes
Collect Diagnostics
- SDL traces during failed greeting attempts (using RTMT with Detailed logging)
- Enable Detailed Level logging for CallManager and IP Voice Media Streaming services
- RTMT real-time monitoring of media resources
- Call Telemetry policy execution logs
- Ensure both CallManager and IP Voice Media Streaming service traces are collected
Contact Support
- Email: [email protected]
- Include: Trace files, policy configuration, CUCM version
Related Documentation
- Configuring Call Greetings - Basic greeting policy setup
- Policy Processing Order - Understanding policy execution
- CURRI Integration Guide - Initial CUCM integration setup