Hello,
I have
a problem with RTPProxy.
Scenario:
SS7
(PSTN) ---> ASTERISK BOX --> Kamailio --> UAC
In case of incoming call from PSTN, when called party answer the call after 60 seconds of ringing, then the call is without audio and in this case I see in the log this message:
Creating
session
Jul 11
11:24:32 b2b-voice-sipproxy-v3 rtpproxy[731]:
INFO:handle_command: new session
766d0e006d8969d36c628e363ea7c3e1@upc.cz, tag as7a7c86ae;1
requested, type strong
Jul 11 11:24:32 b2b-voice-sipproxy-v3 rtpproxy[731]:
INFO:handle_command: new session on a port 52902 created, tag
as7a7c86ae;1
Jul 11 11:24:32 b2b-voice-sipproxy-v3 rtpproxy[731]:
INFO:handle_command: pre-filling caller's address with
XXX.XXX.XXX.XXX:32740
Answer
after approx 60 seconds
Jul 11
11:25:40 b2b-voice-sipproxy-v3 rtpproxy[731]:
INFO:handle_command: lookup request failed: session
766d0e006d8969d36c628e363ea7c3e1@upc.cz, tags
as7a7c86ae;1/l0g9iusua2;1 not found
Jul 11 11:25:40 b2b-voice-sipproxy-v3 rtpproxy[731]:
INFO:handle_delete: forcefully deleting session 1 on ports
35196/36656
Kamailio
log (answer)
Jul 11
11:25:40 b2b-voice-sipproxy-v3 kamailio[5268]: INFO:
<script>: UID:766d0e006d8969d36c628e363ea7c3e1@upc.cz --
ONREPLY_ROUTE: rtpproxy_manage(co)
Jul 11 11:25:40 b2b-voice-sipproxy-v3 kamailio[5268]: ERROR:
rtpproxy [rtpproxy.c:2536]: force_rtp_proxy(): incorrect port
0 in reply from rtp proxy
It
looks like there is somewhere 60 seconds session timeout. But
I don't know where. When the call is answered during first 60
seconds, then everything is OK and we have both audio.
Kamailio
reply route configuration:
onreply_route[REPLYROUTE]
{
#
#-- On-replay block routing --
#
xlog("L_INFO","UID:$ci -- ONREPLY_ROUTE1: $rm $si avp
$avp(s:131) $avp(s:132)");
if(has_body("application/sdp")) {
xlog("L_INFO","UID:$ci -- ONREPLY_ROUTE:
rtpproxy_manage(co)");
rtpproxy_manage("co");
}
if ((isflagset(FLT_NATS) || isbflagset(FLB_NATB))
&& status=~"(183)|(2[0-9][0-9])"){
xlog("L_INFO","UID:$ci -- ONREPLY_ROUTE1:
force_rtp_proxy");
append_hf("P-hint:
onreply_route|force_rtp_proxy \r\n");
}
if (isbflagset(FLB_NATB)) {
xlog("L_INFO","UID:$ci -- ONREPLY_ROUTE1:
P-hint: Onreply-route - fixcontact");
append_hf("P-hint: Onreply-route - fixcontact
\r\n");
fix_nated_contact();
}
exit;
}
Some
parameters settings.
modparam("rtpproxy",
"rtpproxy_sock", "udp:127.0.0.1:7722")
modparam("rtpproxy", "extra_id_pv", "$avp(extra_id)")
modparam("rtpproxy", "rtpproxy_disable_tout", 20)
modparam("rtpproxy", "rtpproxy_tout", 2)
modparam("tm",
"disable_6xx_block", 1)
modparam("tm", "fr_timer", 5000) ## 5 seconds.
modparam("tm", "restart_fr_on_each_reply", 0)
modparam("tm", "auto_inv_100_reason", "Trying")
modparam("dialog",
"dlg_flag", 4)
modparam("dialog", "rr_param", "rtp")
modparam("dialog", "default_timeout", 7230)
modparam("dialog", "dlg_match_mode", 1)
modparam("dialog", "db_mode", 1)
modparam("dialog", "enable_stats", 1)
modparam("dialog", "send_bye", 1)
modparam("dialog", "lreq_callee_headers", "TH: dlh\r\n")
modparam("rr",
"enable_full_lr", 1)
modparam("rr", "append_fromtag", 1)
modparam("rr", "enable_double_rr", 1)
RTPproxy
is installed from Debian package:
/usr/bin/rtpproxy -s udp:127.0.0.1 7722 -u rtpproxy rtpproxy -p /var/run/rtpproxy/rtpproxy.pid -F -l XXX.XXX.XXX.XXX -d DBUG LOG_LOCAL0
Any advice?
Thanks