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.

詳しく見る