I am a newbie to sip/sdp world.
From my understanding of SDP protocol, if we define a=sendonly from sip server to client softphone, the softphone should open one RTP session for listening, but it should not send any RTP packets to destination. Am I correct?
In my case, I can not hear any sounds coming in, and there is a RTP stream to upload audio. Note: I am using the multicast address.
here is a SIP/SDP dump (from server to client softphone):
SIP/2.0 200 OK Via: SIP/2.0/UDP 192.168.8.219:5060;branch=z9hG4bK-d8754z-b394381274917501-1---d8754z-;rport=5060 From: ;tag=d67855ee To: ;tag=KQQHgQ93Sjg1F Call-ID: YTExMzkwZDdhMGM1NTJmMDJlMGFiYjgxMGI1ZDNmMDI. CSeq: 2 INVITE Contact: User-Agent: FreeSWITCH-mod_sofia/1.2.0-rc2+git~20120623T054003Z~65b2f2d2e7+unclean~20120623T083401Z Accept: application/sdp Allow: INVITE, ACK, BYE, CANCEL, OPTIONS, MESSAGE, UPDATE, INFO, REGISTER, REFER, NOTIFY, PUBLISH, SUBSCRIBE Supported: timer, precondition, path, replaces Allow-Events: talk, hold, presence, dialog, line-seize, call-info, sla, include-session-description, presence.winfo, message-summary, refer Content-Type: application/sdp Content-Disposition: session Content-Length: 265 v=0 o=FreeSWITCH 1340907341 1340907343 IN IP4 224.168.168.168 s=FreeSWITCH c=IN IP4 224.168.168.168 t=0 0 a=sendonly m=audio 34567 RTP/AVP 0 101 a=rtpmap:0 PCMU/8000 a=rtpmap:101 telephone-event/8000 a=fmtp:101 0-16 a=silenceSupp:off - - - - a=ptime:20
I use another softphone to multicast sound(verify by wireshark) on that address and port. why can not I hear the sound?
by the way, softphone i am using xlite, the server is freeswitch.
a=sendonly
is, as you suspect, a unidirectional stream. The server says that it will send data and will not receive data, so the client must open a listening port. You're doing the right thing.
If you're not getting audio, it might be time to haul out an analysis tool like Wireshark to see if the server's actually sending any RTP data.