SIP 302 Moved Temporarily vs 412 Conditional Request Failed
SIP 302 (Moved Temporarily) is a 3xx Redirection response, while 412 (Conditional Request Failed) is a 4xx Client Failure response. 302 indicates that the callee has temporarily moved to a different address. The client should retry the request at the Contact address but continue using the original URI for future requests. In contrast, 412 means that the precondition given in the request was not met. Used with SIP event state publication (RFC 3903).
Описание
The callee has temporarily moved to a different address. The client should retry the request at the Contact address but continue using the original URI for future requests.
Когда вы это видите
When a user is temporarily reachable at a different location, such as when traveling or using a different device.
Как исправить
Redirect the current call to the Contact URI provided, but keep the original URI for future requests.
Описание
The precondition given in the request was not met. Used with SIP event state publication (RFC 3903).
Когда вы это видите
When a PUBLISH request includes an If-Match header with an entity tag that does not match the current state on the server.
Как исправить
Refresh the entity tag by performing a new PUBLISH without If-Match, then use the returned SIP-ETag for subsequent updates.
Ключевые различия
302 is a 3xx Redirection response, while 412 is a 4xx Client Failure response.
SIP 302: The callee has temporarily moved to a different address. The client should retry the request at the Contact address but continue using the original URI for future requests.
SIP 412: The precondition given in the request was not met. Used with SIP event state publication (RFC 3903).
You encounter 302 when when a user is temporarily reachable at a different location, such as when traveling or using a different device.
You encounter 412 when when a PUBLISH request includes an If-Match header with an entity tag that does not match the current state on the server.
Когда что использовать
For 302 (Moved Temporarily): Redirect the current call to the Contact URI provided, but keep the original URI for future requests. For 412 (Conditional Request Failed): Refresh the entity tag by performing a new PUBLISH without If-Match, then use the returned SIP-ETag for subsequent updates.