Three points of interest here.

1) By default, NUA supports the 100rel extension described in RFC3262.  Since 
the proxy is sending a 183 response, it seems likely that it is requesting a 
PRACK.  Have those messages been omitted in the provided call flow?

2) If the proxy was not requesting a PRACK, Sofia-SIP is required to ignore the 
SDP in the 200 OK, in accordance with rules in RFC 3261, Section 13.2.1.  

3) If arguing with the vendor isn't an option, you should be able to pull the 
unparsed SDP from the sip_t structure.  From there, a session re-negotiation 
might sync up the stack.

Hope this helps.
-Jarod





From: Louis Guindon [mailto:louisguin...@vtech.ca] 
Sent: Wednesday, October 12, 2011 1:37 PM
To: sofia-sip-devel@lists.sourceforge.net
Subject: [Sofia-sip-devel] 183 early media description different from 200Ok 
media desription


Dear All, 

I am experiencing a problem with the Sofia SIP stack with early media. 

Here the flow: 

A (Sofia)                   Proxy                      B 
|-----------INVITE----------->|                        | 
|                             |----- INVITE ---------->| 
|                             |                        | 
|                             |<------ 100 ------------| 
|<-----------100--------------|                        | 
|                             |                        | 
|<-----------183--------------|                        | 
|     (Media Source Proxy)    |                        | 
|<===========RTP=============>|                        | 
|                             |<------ 200 ------------| 
|<-----------200--------------|                        | 
|     (Media Source B)        |                        | 
|<===========================RTP=======================| 
|                             |                        | 
|------------ACK------------->|                        | 
|                             |------- ACK ----------->| 
|                             |                        | 

During the call setup, the Proxy sends early media so tones (ringback) is 
generated by the proxy. When the endpoint B answers the call, the SDP in the 
200OK contains media description for the endpoint B. The RTP 

Problem: The stack seems to assume that the SDP payload received from a 183 
would be the same as the one received with the 200OK. Thereof, the stack ignore 
reporting the SDP from the 200OK and doesn't intialize the SDP structure 
pointer when the stack has previsously received SDP as part of the 183. The 
application cannot retrieve the SDP information to update the RTP stream 
direction which cause one-way audio. 

Question: How can we force the stack to populate the NUA SDP structure members 
in that case? Any idea would be welcomed... 

Regards, 

Louis Guindon 

------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2d-oct
_______________________________________________
Sofia-sip-devel mailing list
Sofia-sip-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/sofia-sip-devel

Reply via email to