Regarding

" The best recommendation I have seen (don't remember where it was 
written) is that you should render a local ringback if you get a 180 
*and* are not receiving media"

The behavior is suggested by RFC 3960, gateway model.

I basically agree with Paul. Any RFC will say what the client has to do,
this is a matter of implementation and mostly depends on terminal's
capabilities. From my experience, often the client considers the last 18x
message to decide what it has to render to the user, but it is not a rule.
Not sure you're working on the terminal side or network side, in the latter
case IMO you should take care of providing the terminal with the simplest
call flow, or better the one that prevent uncertainty on the client's
behavior. The call flow you mention it is quite common not only in case of
forking, but also in case of Interop towards PLMN. 

Andrea

------------------------------

Message: 4
Date: Tue, 15 Jan 2008 13:05:55 -0500
From: Paul Kyzivat <[EMAIL PROTECTED]>
Subject: Re: [Sip-implementors] Is valid a "183 Session Progress" with
        early-media after "180 Ringing"?
To: I?aki Baz Castillo <[EMAIL PROTECTED]>
Cc: [email protected]
Message-ID: <[EMAIL PROTECTED]>
Content-Type: text/plain; charset=ISO-8859-1; format=flowed



I?aki Baz Castillo wrote:
> Hi, I've configured a UAS to reply with "180 Ringing" for 2 seconds and
then 
> with "183 Session Progress" containing early-media RPT.
> 
> If I call that UAS from some phones (Thomson S203 or Linksys SPA942) I
hear 
> the "ring" but not the early-media after 2 seconds. In fact, the behaviour
is 
> strange since if I press a DTMF (in the Thomson) when I hear "ringing"
then I 
> start hearing the early-media.
> 
> So my question is:
> Is it correct to reply a "180 Ringing" and later a "183 Session Progress"
with 
> early-media?

This is an area that is not well specified. The UA has a complex job 
deciding what to render in all situations before the call is answered.

The best recommendation I have seen (don't remember where it was 
written) is that you should render a local ringback if you get a 180 
*and* are not receiving media. If you begin to receive media you should 
render that, in precedence to local ringback.

BUT, its gets much harder if there has been forking and you might be 
receiving multiple media streams, or if the stream you are receiving is 
not from the same UAS that sent you a 180. And any UAs won't render 
anything until they receive an answer to their offer, or perhaps even 
until they get a 200. I think there are also UAs that, in the scenario 
you describe above, would cease ringback when they get the 183, whether 
they are receiving media or not.

To answer your question: It is certainly *legal* to do as you describe. 
But it may present more interop issues than other things you might do 
instead. Did you try sending the 180 with the SDP answer, skipping the 
183? You *might* have better luck with that.

        Paul


------------------------------

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

Reply via email to