Comment #1 on issue 2354 by alexander.kozlov.IV: B2buaHelper.createResponseToOriginalRequest() does not set different To tag to created response.
http://code.google.com/p/mobicents/issues/detail?id=2354

SIP Servlet Specification, version 1.1
12.5 Original Request and Session Cloning

The incoming request that results in creation of a SipSession is termed as the original request, a response to this original request can be created by the application even if the request was committed and application does not have a reference to this request. This is necessary because the B2BUA application may require to send more than one successful response to a request. For example, when a downstream proxy forked and more than one success responses are to be forwarded upstream. This can only be required on initial requests, as only original requests shall need such multiple responses.

SipServletResponse
B2buaHelper.createResponseToOriginalRequest(SipSession session, int
status, String reasonPhrase) throws IllegalStateException;

The response thus generated MUST have a different "To" tag from the other responses generated to the request and must result in a different SipSession. In this (and similar) cases the container clones the original SipSession for the second and subsequent dialogs, as detailed in 6.2.3.2 Derived SipSessions. The cloned session object will contain the same application data but its createRequest method will create requests belonging to that second or subsequent dialog, that is, with a "To" tag specific to that dialog.

Reply via email to