Status: New
Owner: ----
Labels: Type-Defect Priority-Medium
New issue 2365 by alexander.kozlov.IV: Derived SipSessions
http://code.google.com/p/mobicents/issues/detail?id=2365
SIP Servlet Specification, version 1.1
6.2.3.2 Derived SipSessions
A derived SipSession is essentially a copy of the SipSession associated
with the original request. It is constructed at the time the message
creating the new dialog is passed to the application. The new SipSession
differs only in the values for the tag parameter of the address of the
callee (this is the value used for the To header in subsequent outgoing
requests) and possibly the route set. These values are derived from the
dialog-establishing message as defined by the SIP specification. The set of
attributes in the cloned SipSession is the same as that of the original—in
particular, the values are not cloned.
New SipSessions corresponding to the second and subsequent 2xx responses
(or 1xx responses with To tags) are available through the getSession method
on the SipServletResponse. The “original” SipSession of the request
continues to be available through the original request object.
What steps will reproduce the problem?
I need to write B2BUA application that handle forked responses (See Issue
2362) and send them to another leg (See Issue 2354).
1. Application should have the way to determine that it's Derived
SipSession,
but
resp.getSession().equals(resp.getRequest().getSession()) == true
So, How to know that it's Derived SipSession ?
2. "The set of attributes in the cloned SipSession is the same as that of
the original—in particular, the values are not cloned."
It's matter of dispute, but IMHO "is the same" does not mean "shared".
How to save attributes with the same name to different sip sessions ?
3. I need the way to link Derived SipSession from one leg to Derived
SipSession for another (that I will create using
createResponseToOriginalRequest(...))
Right now
resp.getRequest().getB2buaHelper().getLinkedSession(resp.getSession())
already return linked session, so, Derived SipSession is already linked to
another leg (IMHO it's not correct)
Right now that's all I found.
Maybe... Can you write example of B2BUA application that handle and forward
forked responses ? this will be the easiest way to got all problems related
to Derived SipSessions...
What version of the product are you using? On what operating system?
Mobicents Sip Servlets #1078 r16815.