SIP

SIP 200 OK vs 412 Conditional Request Failed

SIP 200 (OK) is a 2xx Success response, while 412 (Conditional Request Failed) is a 4xx Client Failure response. 200 indicates that the request has succeeded. For INVITE, the call has been answered. For other methods, the action has been completed successfully. In contrast, 412 means that the precondition given in the request was not met. Used with SIP event state publication (RFC 3903).

설명

The request has succeeded. For INVITE, the call has been answered. For other methods, the action has been completed successfully.

이 코드를 보게 되는 경우

When a call is answered (INVITE 200 OK), a registration succeeds (REGISTER 200 OK), or a subscription is accepted (SUBSCRIBE 200 OK).

해결 방법

No fix needed — this is a success response. The caller should send an ACK to complete the three-way handshake for INVITE transactions.

설명

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.

주요 차이점

1.

200 is a 2xx Success response, while 412 is a 4xx Client Failure response.

2.

SIP 200: The request has succeeded. For INVITE, the call has been answered. For other methods, the action has been completed successfully.

3.

SIP 412: The precondition given in the request was not met. Used with SIP event state publication (RFC 3903).

4.

You encounter 200 when when a call is answered (INVITE 200 OK), a registration succeeds (REGISTER 200 OK), or a subscription is accepted (SUBSCRIBE 200 OK).

5.

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 200 (OK): No fix needed — this is a success response. The caller should send an ACK to complete the three-way handshake for INVITE transactions. 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.

더 알아보기