Right, according to RFC 4566 the direction attributes can also be in session level. Just created ticket #998 [1] for this issue. -- [1] http://trac.pjsip.org/repos/ticket/998 -- Thanks, nanang On Thu, Nov 26, 2009 at 9:09 PM, Rafael Maia <rmaia_lcm at hotmail.com> wrote: > Hi, > i am using version 1.0. > I already identified and fixed the problem. > > According to RFC 4566 (5. SDP Specification, page 10),?if we?put the > "a=sendonly" before any media line?(like "m=audio"), it is at session level > and it affects all media lines. > > So the following: > ... > a=sendonly > m=audio ..... > ... > m=video ... > ... > > Is the same as: > ... > m=audio ... > a=sendonly > ... > m=video ... > a=sendonly > ... > > I did not check recent versions, but?PJSIP 1.0 is not handling correctly the > "a=sendonly" before any "m=audio". > In order to fix this i changed the function "update_media_direction" of > sdp_neg.c. Every time a "a=sendonly" appears?before any "m=audio", i remove > it and put it in all "m=audio" that does not have the "a=sendonly". > (When i say "a=sendonly" i mean any of the following values: > "a=sendrecv",?"a=sendonly", "a=recvonly" or "a=inactive") > > My solution is not the?best one,?but i can provide the patch if requested. > > cheers, > > Rafael Maia > > > > >> Date: Thu, 26 Nov 2009 13:48:11 +0700 >> From: bennylp@xxxxxxxxx >> To: pjsip at lists.pjsip.org >> Subject: Re: SDP negotiation: Call hold problems >> >> On Wed, Nov 25, 2009 at 10:44 PM, Rafael Maia <rmaia_lcm at hotmail.com> >> wrote: >> > Hi, >> > i am having problems debugging an SDP negotiation related to call hold. >> > >> > I receive a an INVITE with the following lines of SDP from an unknown >> > user >> > agent: >> > >> > ... >> > a=sendonly >> > m=audio 36884 RTP/AVP 8 101 >> > c=IN IP4 10.184.13.134 >> > ... >> > >> > >> > PJSIP replies incorrectly with a 200 OK "sendrecv": >> > >> > ... >> > m=audio 57928 RTP/AVP 8 101 >> > a=rtpmap:8 PCMA/8000 >> > a=sendrecv >> > ... >> > >> > The "sendonly" is replied with a "sendrecv". >> > According to RFC 4566 (5. SDP Specification, page 10), if a "a=sendonly" >> > is >> > put at a session level it affects all media sessions ("m="). >> > >> > Can anyone tell me if PJSIP supports the "a=sendonly" at session level ? >> > >> >> We support call hold with sendonly/recvonly. As usual, to find out >> what the problem is, please state the PJSIP version that you're using >> and send us the log. >> >> Cheers >> Benny >> >> _______________________________________________ >> Visit our blog: http://blog.pjsip.org >> >> pjsip mailing list >> pjsip at lists.pjsip.org >> http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > > ________________________________ > Hotmail: Trusted email with powerful SPAM protection. Sign up now. > _______________________________________________ > Visit our blog: http://blog.pjsip.org > > pjsip mailing list > pjsip at lists.pjsip.org > http://lists.pjsip.org/mailman/listinfo/pjsip_lists.pjsip.org > >