[SR-Users] One sided or no voice issue with websockets
Kamrul Khan
dodul at live.com
Fri Oct 24 01:13:19 CEST 2014
Hello,
As explained in my eirlier email. My topology is like below:
sipml5(behind NAT) -> (Public Interface)kamailio(Private Interface) <----> Freeswitch(172.16.0.150)
As Freeswitch is doing the ICE handling. My SIPml5 cliemt used to receive a SDP like the below:
v=0
o=FreeSWITCH 1414067668 1414067669 IN IP4 172.16.0.150
s=FreeSWITCH
c=IN IP4 172.16.0.150
t=0 0
a=msid-semantic: WMS cYoQYYjanLXOOfaNPt6yznk0jyS7oDzr
m=audio 31240 UDP/TLS/RTP/SAVPF 0 101
a=rtpmap:0 PCMU/8000
a=rtpmap:101 telephone-event/8000
a=ptime:20
a=fingerprint:sha-256 C4:E4:BD:FD:9C:61:DC:BB:CF:7C:47:C5:24:54:67:03:B2:82:6C:98:CB:24:00:27:4A:FC:9B:60:0E:82:53:F1
a=rtcp-mux
a=rtcp:31240 IN IP4 172.16.0.150
a=ssrc:408503913 cname:sN7gBhhOS5swat9Q
a=ssrc:408503913 msid:cYoQYYjanLXOOfaNPt6yznk0jyS7oDzr a0
a=ssrc:408503913 mslabel:cYoQYYjanLXOOfaNPt6yznk0jyS7oDzr
a=ssrc:408503913 label:cYoQYYjanLXOOfaNPt6yznk0jyS7oDzra0
a=ice-ufrag:N6edjo4tNMq1gQiy
a=ice-pwd:tgFVnMA6HTsHdsoQpsUzHOSk
a=candidate:7591449709 1 udp 659136 172.16.0.150 31240 typ host generation 0
Due to this the SIPml5 client used to send all traffic to 172.16.0.150.
Then we configured rtpengine to update the SDP.
rtpengine_offer("replace-session-connection ICE=remove media-address=Kamailio.public.i.p");
This removes the ICE info from the SDP and updates the Connection IP (c=). But, after implementing this the SIPml5 client simply stops sending media.
We then tried making calls from www.sipml5.org/call.html and took call trace. The javascript consol log looks like the below:
v=0
o=doubango 1983 678901 IN IP4 188.165.231.30
s=-
c=IN IP4 188.165.231.30
t=0 0
a=fingerprint:sha-256 19:FB:A5:76:58:86:76:15:1A:40:81:A2:6F:28:32:00:B2:A0:6A:6E:6C:B8:7B:32:46:5E:3B:67:65:1B:3D:6D
a=setup:active
a=connection:new
m=audio 53240 UDP/TLS/RTP/SAVPF 8 101
c=IN IP4 188.165.231.30
a=ptime:20
a=minptime:1
a=maxptime:255
a=silenceSupp:off - - - -
a=rtpmap:8 PCMA/8000/1
a=rtpmap:101 telephone-event/8000/1
a=fmtp:101 0-16
a=sendrecv
a=rtcp-mux
a=ssrc:197049014 cname:ea7ff6f8011d57ea40a5c78ec2b6507e
a=ssrc:197049014 mslabel:6994f7d1-6ce9-4fbd-acfd-84e5131ca2e2
a=ssrc:197049014 label:doubango at audio
a=ice-ufrag:zAFzFk6NwUyJerc
a=ice-pwd:OKBzfv9agBMhAvB00kbRIn
a=candidate:5c9dCkKk3HAS127 1 udp 2130706431 188.165.231.30 53240 typ host
This is what we get from the packet trace:
172.16.1.190 188.165.231.30 STUN 106 Binding Success Response XOR-MAPPED-ADDRESS: 188.165.231.30:53240
188.165.231.30 172.16.1.190 DTLSv1.0 199 Client Hello
172.16.1.190 188.165.231.30 DTLSv1.0 930 Server Hello, Certificate, Server Key Exchange, Certificate Request, Server Hello Done
188.165.231.30 172.16.1.190 DTLSv1.0 822 Certificate (Fragment), Certificate (Fragment), Certificate (Fragment), Certificate......
172.16.1.190 188.165.231.30 DTLSv1.0 133 Change Cipher Spec, Encrypted Handshake Message
And then UDP (media starts to flow).
This is our overall situation. We are a bit stuck and not sure what to do next. Please help us...
Thanks in advanced.
From: dodul at live.com
To: gascagonzalo at gmail.com; sr-users at lists.sip-router.org
Date: Fri, 24 Oct 2014 01:05:24 +0600
Subject: Re: [SR-Users] One sided or no voice issue with websockets
Hi Gonzalo,
Thanks a lot for your reply. I took a closer look at the issue and I guess we figured out the reason why this is happening. But, still couldnt get the solution unfortunately. Our topology is like this:
sipml5(behind NAT) -> (Public Interface)kamailio(Private Interface) <----> Freeswitch
So, when we are sending calls to to freeswitch via Kamailio; Freeswitch is updating the SDP with its private IP. Therefore the client tries to send RTPs to the private IP of freeswitch. We have rtpproxy installed in our Kamailio server. We tried bunch of stuffs to solve the issue like ICE handling with rtpengine but nothing worked out. Can you please give me some more advise that I may try ?
Thanks in advanced.
Date: Wed, 22 Oct 2014 09:53:58 -0700
Subject: Re: [SR-Users] One sided or no voice issue with websockets
From: gascagonzalo at gmail.com
To: sr-users at lists.sip-router.org
CC: dodul at live.com
Hi Kamrul,
Can you provide more details about the call flow:It is important to understand the following:-Topology-Web browser models and versions (Chrome vs FireFox)-Kamailio version
When you say:"It works perfectly within local network"
Please take a look at ICE negotiation.
I have sipml5 placing calls to Asterisk via Kamilio working without any issues.
sipml5 ---> kamailio --> fs --> asterisk ------------------ media ------------>
Please provide logs:sipml5 (java console)kamailio logs(If possible browser logs)
-Gonzalo
On Wed, Oct 22, 2014 at 9:12 AM, Amit Patkar <amit at avhan.com> wrote:
Please check ICE server settings. Your browser may be publishing local IP. One way voice or no voice is typical case when client is behind firewall.
Regards,
Amit Patkar
dodul <dodul at live.com> wrote:
Hi
I didn't get any responses from anyone regarding my issue. Can someone please give me some clue what I can do? Or if more information is needed please let know so that I can provide.
Sent from my Samsung Galaxy smartphone.
-------- Original message --------
From: Kamrul Khan <dodul at live.com>
Date:10-21-2014 17:45 (GMT-06:00)
To: sr-users at lists.sip-router.org
Cc:
Subject: [SR-Users] One sided or no voice issue with websockets
Hi,
We have a setup with sipml5 to kamailio. It works perfectly within local network. In public network the signaling establishes perfectly, but most of the time we hear no voice, sometimes we hear one sided voice and in rare cases we hear voice from both sides.
To fix this issue we configured our nathandler like the below: But, still no luck. Any idea how to fix this? Please HELP!!!
modparam("nathelper|registrar", "received_avp", "$avp(RECEIVED)")
modparam("nathelper", "nortpproxy_str", "a=sdpmangled:yes\r\n")
.
.
.
route {
.
.
if (nat_uac_test("115")) {
if(nat_uac_test("64"))
force_rport();
}
if (method=="REGISTER") {
fix_nated_register();
add_rcv_param();
} else {
fix_nated_contact();
if(nat_uac_test("64")){
if (!add_contact_alias()) {
xlog("L_ERR", "Error aliasing contact <$ct>\n");
sl_send_reply("400", "Bad Request");
exit;
}
} else {
add_rcv_param();
}
}
}
.
.
onreply_route {
if (nat_uac_test(64)) {
add_contact_alias();
}
.
.
}
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users at lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list
sr-users at lists.sip-router.org
http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.sip-router.org/pipermail/sr-users/attachments/20141024/172716be/attachment.html>
More information about the sr-users
mailing list