SIP 199 Early Dialog Terminated vs 487 Request Terminated
SIP 199 (Early Dialog Terminated) is a 1xx Provisional response, while 487 (Request Terminated) is a 4xx Client Failure response. 199 indicates that a UAS can send this to indicate that an early dialog has been terminated. Used when forking results in multiple early dialogs. In contrast, 487 means that the request was terminated by a BYE or CANCEL. The original request was cancelled before it could be completed.
説明
A UAS can send this to indicate that an early dialog has been terminated. Used when forking results in multiple early dialogs.
このコードが表示される場合
In forked call scenarios when one of the forked branches is cancelled because another branch was answered.
解決方法
No action needed. This is normal behavior in forked call setups. Ensure your UA handles early dialog termination gracefully.
説明
The request was terminated by a BYE or CANCEL. The original request was cancelled before it could be completed.
このコードが表示される場合
When the caller hangs up before the callee answers (CANCEL sent for pending INVITE). This is normal call abandonment.
解決方法
No fix needed — the caller intentionally terminated the request. This is normal behavior.
主な違い
199 is a 1xx Provisional response, while 487 is a 4xx Client Failure response.
SIP 199: A UAS can send this to indicate that an early dialog has been terminated. Used when forking results in multiple early dialogs.
SIP 487: The request was terminated by a BYE or CANCEL. The original request was cancelled before it could be completed.
You encounter 199 when in forked call scenarios when one of the forked branches is cancelled because another branch was answered.
You encounter 487 when when the caller hangs up before the callee answers (CANCEL sent for pending INVITE). This is normal call abandonment.
どちらをいつ使うか
For 199 (Early Dialog Terminated): No action needed. This is normal behavior in forked call setups. Ensure your UA handles early dialog termination gracefully. For 487 (Request Terminated): No fix needed — the caller intentionally terminated the request. This is normal behavior.