Csdn lidp http://blog.csdn.net/perfectpdl
The SIP response to the invite request may be final or temporary. The final response is always sent reliably, but not the temporary response. You can use the prack (temporary response confirmation) method to reliably send a temporary response.
To develop applications that support prack, the following conditions must be met:
- The client sending the invite request must put a 100rel tag in the supported or require header to indicate that this client supports prack.
Prack is described according to the following standards:
- RFC 3262 ("reliability of provisional responses in the Session Initiation
Protocol (SIP), which extends RFC 3261 ("SIP: Session Initiation Protocol") by adding prack and marking 100rel ").
Process
- For applications acting as proxies, perform the following operations:
- Make the application generate and send a reliable temporary response to any unlabeled invite request in the "to" field.
- Perform this operation for applications acting as user proxy clients (UAC:
- Add the 100rel flag to the outgoing invite request. This option mark must appear in the supported header or require header.
- Set the rack header according to section 3262 ("rack") of RFC 7.2.
- UAC sends invite and receives reliable responses. When the UAC receives this reliable response, it sends a prack request to the UAS and receives a 200 OK message on the prack, so the 200 OK message should be received immediately.
- Prepare the application to generate and send the final response for the local prack request.
- This operation is performed on applications acting as user-generated servers (UAs:
- When a reliable temporary response does not respond within 64 * T1 seconds (T1 is a sip timer)
- Enables the application to have at most one complete, unresponsive, reliable temporary response. Try to send another response before the first response causes an exception.
- Make sure that the application forces RFC 3262 to provide/respond to prack requests that contain session descriptions. Specifically, if any unresponded temporary response contains the session description,