[RTPproxy Users] Same IP\port for caller and callee
tony at everestbn.com
tony at everestbn.com
Tue Dec 1 07:27:38 PST 2009
Hello,
I'm having random audio issues (<10% of the time)
with blind
call transfers on a Polycom phone. According to RTPPROXY's
logs,
it seems it is substituting the same IP and port for the
caller's
and callee's address causing one end to hear their own
voice
while the other end hears nothing.
INFO:rxmit_packets: caller's
address filled in: a.b.c.199:17856
(RTP) INFO:rxmit_packets: guessing RTCP
port for caller to be
17857
INFO:rxmit_packets: callee's address
filled in:
a.b.c.199:17856 (RTP) INFO:rxmit_packets: guessing RTCP port
for
callee to be 17857
The SDP in the SIP messages has all the
correct IPs and ports and it appears from a SIP overview everything
should
work fine.
Here is some background information:
I am using
Kamailio 1.5.3 with RTPPROXY 1.2.1.
SIP PATH
is as follows:
PSTN Gateway---Kamailio--SIP Proxy Server--Polycom
Phone
RTP
PATH:
PSTN Gateway---Kamailio----Polycom
Phone
*There are
nor firewalls or filters.
Call
Flow:
I place a call from the gateway to the ip phone. Call is
answered.
When I do a blind transfer from the Polycom, the SIP Proxy
sends an invite with no
SDP, the gateway responds with a 200 with SDP
and the SIP Proxy then sends
an ACK with SDP. As I mentioned,
this works most of the time and the
SIP messages look identical for
when the transfer works and when it
doesn't. When it doesn't work,
the gateway end hears their own voice while
the recipient of the
Polycom IP phone transfer (usually another phone on the same proxy)
hears nothing.
Here is a portion of my configuration
file:
.....
if (is_method("INVITE")) {
if((search("^Content-Type:[ ]*application/sdp")) ||
(search("^Content-Type:application/sdp"))){
rtpproxy_offer("fcr");
setflag(12);
}
}
if
(is_method("ACK")) {
if((search("^Content-Type:[ ]*application/sdp")) ||
(search("^Content-Type:application/sdp"))) {
rtpproxy_answer("fcr");
}
}
t_on_reply("1");
....
}
onreply_route[1]
{
if
(status=~"(180)|(183)|(2[0-9][0-9])"){
if((search("^Content-Type:[ ]*application/sdp"))
||
(search("^Content-Type:application/sdp"))) {
if (isflagset(12)) {
rtpproxy_answer("fcr");
} else {
rtpproxy_offer("fcrl");
}
}
}
}
Any help
would be greatly
appreciated!
Thanks,
Tony
More information about the Users
mailing list