Did you get this SIP error on your Cisco call manager?

You already change all the codec, configured the transcoder, register with the call manager, and everything seems fine. But outgoing calls still give this error!!!

SIP/2.0 488 Not Acceptable Here
Via: SIP/2.0/UDP 192.168.1.1:5060;received=192.168.1.1;branch=fg5df4bK4F1C77
To: ;tag=5435345-43543
From: ;tag=E435A43-A43
Call-ID: [email protected]
CSeq: 101 INVITE
Allow: CANCEL, ACK, INVITE, BYE, OPTIONS, REGISTER, NOTIFY, INFO, REFER, SUBSCRIBE, PRACK, UPDATE, MESSAGE, PUBLISH
Contact: 
Reason: Q.850;cause=65
Content-Length: 0
Based on the Wikipedia article List of SIP response codes

488 Not Acceptable Here
Some aspect of the session description or the Request-URI is not acceptable, or Codec issue.

If we want to go to more deep, the IETF rfc3261 explain that message:

488 Not Acceptable Here

The response has the same meaning as 606 (Not Acceptable), but only
applies to the specific resource addressed by the Request-URI and the
request may succeed elsewhere.

A message body containing a description of media capabilities MAY be
present in the response, which is formatted according to the Accept
header field in the INVITE (or application/sdp if not present), the
same as a message body in a 200 (OK) response to an OPTIONS request.

Often this is related to codec incompatibilities. For anyone encountering this issue, they should check whether both sides (server and client) have at least one codes they can negotiate.

To fix that, you should check both side configurations; I mean, if you got an error for a SIP trunk, you should check the SIP trunk provider codec and config; if it’s an interconnection in your company, you should check the second server configuration.

For finding and debugging the codec for both sides, you can capture SIP sessions by tools like Wireshark; you can check the codec for each call.

cisco-wireshark-Message-SIP-488-4

To fix it, you should go to the SIP trunk and look for “MTP Preferred Originating Codec,” and change it. Make sure both sides use the same codec.

Step 1:
Login to your Cisco Unified CM Administration and click on the Device menu.

cisco-Message-SIP-488-1

Step 2:
Click on Trunk

cisco-Message-SIP-488-2

Step 3:
Select your SIP trunk and click on it to change the configuration.

Step 4:
In the SIP trunk configuration, go to the “SIP Information” section and check the value of “MTP Preferred Originating Codec.”

cisco-Message-SIP-488-3

CUCM uses this codec only when an MTP is inserted for the call.

If the problem is still unresolved, check Early Offer.
By default, CUCM SIP trunks send Delayed Offer INVITEs, which carry no SDP. Many SIP providers expect Early Offer, with the codec list in the first INVITE. Where you configure Early Offer depends on whether a Cisco Unified Border Element (CUBE) sits between CUCM and the provider.

Option A: CUCM trunk connects directly to the provider

Step 1:
In Cisco Unified CM Administration, go to Device > Device Settings > SIP Profile and open the SIP profile assigned to the trunk.

Step 2:
Set “Early Offer support for voice and video calls” to “Mandatory (insert MTP if needed)” and save. On releases before CUCM 8.5, this is a checkbox, or you can check “Media Termination Point Required” on the trunk, which inserts an MTP on every outbound call.

Step 3:
Reset the SIP trunk so it picks up the profile change.

Option B: a CUBE sits between CUCM and the provider

CUBE can convert Delayed Offer to Early Offer itself, so CUCM does not need an MTP. These are Cisco IOS / IOS XE commands, entered on the CUBE router, not on the CUCM console:

enable
configure terminal
voice service voip
 allow-connections sip to sip
 sip
  early-offer forced
end

To apply it to a single outbound dial-peer instead, use voice class sip early-offer forced under that dial-peer. See Cisco’s Delayed Offer to Early Offer guide.

Do you want to know how your phone system is performing?

If you are looking for a way to monitor the performance of your Cisco Call Manager, then look no further! We provide everything you need in one simple package that will be easy to install and use. There’s no other service like it out there! It’s not just an amazing product but also an incredible experience you can have every day of your life.

Check your Cisco system and choose a trial setup path.