Hi, Pat!

Can you send over the logs from rtpproxy? Perhaps I can figure out why rtpproxy is not sending RTP to the new port.


Best regards,
Răzvan

On 03/01/2018 05:01 AM, Pat Burke wrote:
We have a situation where a fax comes in, all of the negotiation looks good (ports are translated like they are supposed to be), and the interface with RTP Proxy looks correct (at least to me).  But what happens is that after the Re-INVITE for T38, the RTP Proxy continues to sent the RTP to the customer's old port.  In the example below, RTP Proxy sends the RTP to the customer on port 7186 AFTER the Re-INVITE with the new port.


SIP trace is located at https://www.4shared.com/file/wIVrkOtnei/SIP.html


From the SIP responses, it appears that the code is performing correctly.  Not certain what to try next.


Also, the RTP Proxy server was rebooted.


Any suggestions?


Thanks in advance,

Pat





Configuration:

     OpenSIPS 2.2.3 on Ubuntu 16.04

     RTP Proxy 2.2.alpha.20160822 on Ubuntu 16.04




***************************************************

*** OpenSIPS re-Invite code.


if (has_totag()) {

if (is_method("BYE")) {
if ($avp(call_end_seconds) == NULL) {
$avp(bye_src_ip) := $si;
$avp(bye_time) := $Ts;
get_timestamp($avp(call_end_seconds),$avp(call_end_useconds));

$json(end_recording_details) := "{}";
$json(end_recording_details/endsec) = $avp(call_end_seconds);
$json(end_recording_details/endusec) = $avp(call_end_useconds);

xlog("L_INFO", "$dlg_val(rU) SCRIPT:RTPPROXY:DEBUG: End call recording callid=$ci ; ft= $ft data = $json(end_recording_details) \n");


#async(avp_db_query("UPDATE recordings SET end_recording_details = '$json(end_recording_details)' WHERE call_id = '$ci'", ""), resume_totag); avp_db_query("UPDATE recordings SET end_recording_details = '$json(end_recording_details)' WHERE call_id = '$ci'", "");

} else {
xlog("L_INFO", "$dlg_val(rU) SCRIPT:BILLING:DEBUG: Extra BYE received.\n");
}
}

if (loose_route() || match_dialog()) {
if ( $DLG_status==NULL ) {
if (is_method("ACK") && t_check_trans() ) {
t_relay();
exit;
}
xlog("L_WARN", "$rU SCRIPT:TRAFFIC:WARNING: - $rm is not in-dialog ( callid=$ci ; ruri=$ru ; route=$(hdr(Route)[*]) )\n");
exit;
} else {
if (is_method("INVITE")) {
record_route();
if (stream_exists("image") && $dlg_val(t38) == "0") {
xlog("L_WARN", "$rU SCRIPT:FAX:DEBUG: Received RE-INVITE containing FAX, but carrier doesn't support it - rejecting $ci \n");
send_reply("488","Not Acceptable");
exit;
}

xlog("L_INFO", "$dlg_val(rU) SCRIPT:RTPPROXY:DEBUG: - $dlg_val(proxy_media) - $dlg_val(rtpproxy_group) - $dlg_val(customer_record)\n");
# Setup proxy media
if ($dlg_val(proxy_media) != NULL && $dlg_val(proxy_media) == "1") {
if (nat_uac_test("8")) {
rtpproxy_offer("co",,"$dlg_val(rtpproxy_group)", "$avp(rtpprpoxy_server)");
} else {
rtpproxy_offer("cor",,"$dlg_val(rtpproxy_group)", "$avp(rtpprpoxy_server)");
}

$avp(rtpprpoxy_server) := $(avp(rtpprpoxy_server){s.select,1,:});
if ($dlg_val(customer_record) == "1") {
rtpproxy_start_recording("$dlg_val(rtpproxy_group)");
}

xlog("L_INFO", "$dlg_val(rU) PHB - D - media = $(rb{sdp.line,c}) rtp = $avp(rtpprpoxy_server) \n");
}

t_on_reply("media");
}

t_relay();
exit;
}
} else {
if ( is_method("ACK") ) {
if ( t_check_trans() ) {
t_relay();
exit;
} else
exit;
}
sl_send_reply("404","Not here");
exit;
}



***************************************************

*** RTP Ports in the call flow


              Carrier                               OpenSIPS                   Customer


Audio      61616 <<<<<<<<<<<<<<<<< 18986 <<<<<<<<<<

                                  >>>>>>>>>>>>>> 16930 >>>>>>>>>>>>>> 7186    (intial INVITE / 200 OK)


Image                       >>>>>>>>>>>>>> 16930 >>>>>>>>>>>>>> 7192 (Re-INVITE / 200 OK - T38)


                   61616 <<<<<<<<<<<<<<<<< 18986 <<<<<<<<<<


***************************************************

*** RTP Proxy Command TRACE


#

U 216.147.191.162:41657 -> 216.147.191.232:9992

1422_78032 Uc0,18,101 1917630487_62491918@208.93.41.184 208.93.41.140 61616 gK0c00bce5;1

#

U 216.147.191.232:9992 -> 216.147.191.162:41657

1422_78032 18986 216.147.191.232


#

U 216.147.191.162:41657 -> 216.147.191.232:9992

1422_78033 Lc0,101 1917630487_62491918@208.93.41.184 216.147.191.171 7186 gK0c00bce5;1 5a142640;1

#

U 216.147.191.232:9992 -> 216.147.191.162:41657

1422_78033 16930 216.147.191.232


#

U 216.147.191.162:41657 -> 216.147.191.232:9992

1422_78034 U 1917630487_62491918@208.93.41.184 216.147.191.171 7192 5a142640;1 gK0c00bce5;1

#

U 216.147.191.232:9992 -> 216.147.191.162:41657

1422_78034 16930 216.147.191.232


#

U 216.147.191.162:41657 -> 216.147.191.232:9992

1422_78035 L 1917630487_62491918@208.93.41.184 208.93.41.140 61616 5a142640;1 gK0c00bce5;1







_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


--
Răzvan Crainea
OpenSIPS Core Developer
  http://www.opensips-solutions.com
OpenSIPS Summit 2018
  http://www.opensips.org/events/Summit-2018Amsterdam

_______________________________________________
Users mailing list
Users@lists.opensips.org
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to