Thanks Bala and Paul,

I have looked for this issue in the latest months in the archive but didn’t
find anything about it (I will dig deeper to see earlier queries in this
matter).

I can understand that A will get two sessions (one to A and one to B). Now
to spice up the case a bit I will change the proxy to a B2BUA (which I'm
responsible over). Im very sorry that it was not clear in the first mail,
basicly I was just looking for a scenario and it was not until I saw your
answer that I understood that B2BUA or proxy makes a big differnece in this
case

So...
* A sends invite to B2BUA
* B2B forks the call to B and C
* B answers with 183 with SDP
* C sends 180 with no SDP
* C sends 200 OK with SDP
(* B2BUA cancel call to C)

Now A has only one session, and that session is with B2BUA. What A does with
the SDP(bsdp) sent from B2BUA to A in a 200 OK I have to read about in 3264
but if I remember correctly it will just ignore it (will do some reading and
get back if I find some other actions). Maybe it does also matter if the SDP
is in a reliable provisinal response or not? Anyway, my guess is that B2BUA
needs, when it gets 200 OK from B:
- send first the 200 OK (with bsdp) to A
- Send a empty reInvite to A
- get 200 OK with a'sdp
- send reInvite to B with a'sdp
- get 200 OK from B with b'sdp
- send ACK to B
- send ACK to A with b' sdp

That will do the trick, will it? Maybe it is also possible to use UPDATE in
some way

// Andreas

> -----Original Message-----
> From: [EMAIL PROTECTED] 
> [mailto:[EMAIL PROTECTED] On 
> Behalf Of Paul Kyzivat
> Sent: Thursday, September 13, 2007 8:26 PM
> To: [EMAIL PROTECTED]
> Cc: 'Andreas Byström'; [email protected]
> Subject: Re: [Sip-implementors] Early media and forking calls
> 
> 
> When you get the 200 from C you can assume that the proxy 
> sent a CANCEL 
> to B. But you cannot assume the CANCEL will work. It is still 
> possible 
> to receive a 200 from B. You need to be prepared to handle that case 
> too. (The usual thing to do is send a BYE on the dialog of any 
> subsequent 200 responses.)
> 
>       Paul
> 
> Bala Neelakantan wrote:
> >> -----Original Message-----
> >> From: [EMAIL PROTECTED] [mailto:sip- 
> >> [EMAIL PROTECTED] On Behalf Of Andreas 
> >> Byström
> >> Sent: Thursday, September 13, 2007 9:48 AM
> >> To: [email protected]
> >> Subject: [Sip-implementors] Early media and forking calls
> >>
> >> Hi everyone,
> >>
> >> I'm working with a case that involves a call from A that a proxy 
> >> forks to B and C. I see a potential problem when the following 
> >> happens:
> >> * A sends SDP offer
> >> <proxy forks the call to B and C>
> >> * B answers with a 183 including a sdp answer
> > 
> > Please refer to RFC 3264 as it describes the offer/answer 
> scenarios. 
> > Also this issue has been discussed in the Sip-implementors list a 
> > number of times, and you will learn a lot by reading through them.
> > 
> > So, 183 from B will create a dialog.
> > 
> >> * C sends 180 with no spd
> > 
> > This 180 response is another dialog and A should be 
> prepared to handle 
> > this dialog.  At this point, the final response (200 OK) could be 
> > coming from B or C.
> > 
> >> * C answers the call first, which means C sends a sdp 
> response in the 
> >> 200 OK.
> >>
> > 
> > In this scenario, the call is established between A and C.  
> Typically 
> > the proxy will CANCEL the forked call to B.
> > 
> >> I have tried to find info on this but have failed to do 
> so. So I was 
> >> thinking that someone on this forum have already been facing a 
> >> scenario like this, or maybe know where I can find info on how to 
> >> solve it in a way that dont violate specs (and also works 
> of course)
> >>
> > 
> > Please refer to the mailing list archives.
> > 
> >> How should A handle this (it already got a sdp answer on 
> the offer)? 
> >> Does A or proxy have to start a renegotiation with C?
> > 
> > I think your question is how should A handle the answer it received 
> > already from B?  The proxy CANCELs the call to B.
> > 
> > When the C comes back with 200 OK with SDP, that is going 
> to be used.
> > 
> >> Should A see in the tag that this is a  respone from 
> another UA then 
> >> from where it did get the first spd answer (the on in 183 
> sent from 
> >> B) and therefore accept it?
> > 
> > That could be bad implementation choice.
> > 
> >> Proxy needs to send a cancel to B when it sees that C is replying 
> >> wiht 200 OK. Does the proxy also need to say something to A to 
> >> terminate the media session already set up between A and B?
> > 
> > Proxy doesn’t tell anything about media/SDP.  It is between 
> endpoints.
> > 
> >   
> >> Thanks in advance
> >> // Andreas
> > 
> > Thanks,
> > Neel.
> > 
> >> _______________________________
> >>
> >> Andreas Byström
> >> Software Engineer
> >>
> >> Teligent AB
> >> Konsul Jonssons väg 17
> >> P.O. Box 213
> >> SE 14923 Nynäshamn
> >>
> >> mail: [EMAIL PROTECTED]
> >> web: www.teligent.se <http://www.teligent.se/>
> >> phone:  +46 (0)8 4101 7221
> >> mobile: +46 (0)733 1172 21
> >> fax:      +46 (0)8 520 193 36
> >> _______________________________
> >>
> >> _______________________________________________
> >> Sip-implementors mailing list 
> [email protected]
> >> https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
> > 
> > 
> > _______________________________________________
> > Sip-implementors mailing list
> > [email protected]
> > https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
> > 
> _______________________________________________
> Sip-implementors mailing list
> [email protected]
> https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors
> 


_______________________________________________
Sip-implementors mailing list
[email protected]
https://lists.cs.columbia.edu/cucslists/listinfo/sip-implementors

Reply via email to