Cisco Call Manager
Cisco Unified Communications Manager (formerly Cisco Call Manager) defaults to requiring the FreeSWITCH Sofia profile configuration option of third party call control (3pcc). This is because the default CUCM SIP Trunk configuration is to send the initial INVITE without an SDP. Even with 3pcc enabled in FreeSWITCH this can cause issues (especially when ringback/progress needs to be provided).
The workaround is to enable "Media Termination Point Required" in the SIP trunk configuration screen in CUCM. With this change you should no longer need to enable 3pcc in your FreeSWITCH Sofia profile. Tested and confirmed to work with CUCM 7.1.
An alternative to using "Media Termination Point Required" is to enable "Early Offer" which includes the SDP in the initial invite. Delayed offer does not include the SDP and instead waits for the receiving device to send it's capabilities first. Delayed Offer is the default setting on the SIP Profile in CUCM 7.0+. You may change this by navigating to Device, Device Settings, SIP Profile. Find the existing SIP Profile and make a copy. Edit the copy you just created and check the box near the bottom of the page "Early Offer support for voice and video calls (insert MTP if needed)". Save this profile, apply it to your FreeSWITCH trunk. Please remember you must reset the trunk in CUCM for this change to take effect.
If you press the ? mark twice during a call from a Cisco phone you will notice the active codec is now G.722 instead of G.711.