[SIPSERVLET_SPEC-25] Clarification on how to handle Replaces in JSR 289 Created: 07/Nov/12  Updated: 26/Mar/14  Resolved: 24/Feb/14

Status: Resolved
Project: sipservlet-spec
Component/s: None
Affects Version/s: None
Fix Version/s: 2.0-pr

Type: New Feature Priority: Major
Reporter: bpulito Assignee: binod
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified


RFC 3891 states this when an INVITE is received with a Replaces header: "If no match is found, the UAS rejects the INVITE and returns a 481 Call/Transaction Does Not Exist response. likewise, if the Replaces header field matches a dialog which was not created with an INVITE, the UAS MUST reject the request with a 481 response. "

JSR 289 states that:
"1) If a container supporting [RFC 3911] or [RFC 3891] receives an initial INVITE request with Join or Replaces header, the container must first ensure that the request passes the RFC-defined validation rules."

JSR 289 also states that:
"If no SipSession matching the tuple is found, the container MUST pass the request to the Application Router as an untargeted request, i.e., where the SipTargetedRequestInfo argument to getNextApplication() is null."

This is a contradiction between the RFC and the JSR. So its not clear if the SIP container needs to override the validation rules of the RFC. If the request is routed to a UAS application, and there is no match, is it the applications responsibility to respond with a 481?

Comment by binod [ 11/Feb/14 ]

Right, it is the applications responsibility to respond with 481, if a match for replaces header is not found. To clarify this, we can add a note saying that

"However, if the container does not find a dialog matching Join or Replaces header, then the container will not respond with 481 directly. Applications may choose to respond to the request with 481".

Comment by binod [ 24/Feb/14 ]

This is now part of 0.8 version distributed.

Generated at Mon Apr 24 09:20:56 UTC 2017 using JIRA 6.2.3#6260-sha1:63ef1d6dac3f4f4d7db4c1effd405ba38ccdc558.