SIP 183 Session Progress vs 420 Bad Extension
SIP 183 (Session Progress) is a 1xx Provisional response, while 420 (Bad Extension) is a 4xx Client Failure response. 183 indicates that used to convey information about the progress of the call that is not otherwise classified. Often carries early media (ringback tones, announcements) via SDP. In contrast, 420 means that the server did not understand the protocol extension specified in a Require or Proxy-Require header. The Unsupported header lists the unknown extensions.
Description
Used to convey information about the progress of the call that is not otherwise classified. Often carries early media (ringback tones, announcements) via SDP.
When You See It
During call setup, especially in PSTN interworking scenarios. The response may contain SDP for early media like custom ringback tones or IVR prompts.
How to Fix
No fix needed — this is informational. If early media is not playing, check codec negotiation and SDP handling in your UA.
Description
The server did not understand the protocol extension specified in a Require or Proxy-Require header. The Unsupported header lists the unknown extensions.
When You See It
When the request includes a Require header with SIP extensions that the server does not support.
How to Fix
Check the Unsupported header in the response. Remove the unsupported extension from the Require header or make it optional via Supported.
Key Differences
183 is a 1xx Provisional response, while 420 is a 4xx Client Failure response.
SIP 183: Used to convey information about the progress of the call that is not otherwise classified. Often carries early media (ringback tones, announcements) via SDP.
SIP 420: The server did not understand the protocol extension specified in a Require or Proxy-Require header. The Unsupported header lists the unknown extensions.
You encounter 183 when during call setup, especially in PSTN interworking scenarios. The response may contain SDP for early media like custom ringback tones or IVR prompts.
You encounter 420 when when the request includes a Require header with SIP extensions that the server does not support.
When to Use Which
For 183 (Session Progress): No fix needed — this is informational. If early media is not playing, check codec negotiation and SDP handling in your UA. For 420 (Bad Extension): Check the Unsupported header in the response. Remove the unsupported extension from the Require header or make it optional via Supported.