<div dir="ltr">Thanks Vasily i have changed a little today using a RTPPROXY route.<div><br>Thats what i have right now</div><div><br></div><div>But its not working as expected</div><div><br></div><div>What i try is to detect if i have SAVP from endpoint and translate to RTP to ASterisk an later RTP from ASterisk translate to SRTP using rtpengine</div><div><br></div><div>I had extrange behaviour using rtpproxy that send SRTP to Asterisk and i have SRTP calls, i though rtpproxy 2.0 could not manage SRTP calls. but it pass it to Asterisk</div><div><br></div><div>Using RTPengine i have tested with rtpproxy_manage as you see and also with rtpengine.</div><div><br>If i load both start_recording() feature is lost.</div><div><br></div><div>On rtpengine (behind NAT) im using it as:</div><div><br></div><div>







<p class=""><span class="">INTERFACES="192.168.0.178 internal/<a href="http://192.168.0.178">192.168.0.178</a> external/<a href="http://192.168.0.179">192.168.0.179</a>!EXTERN_IP</span></p></div><div><br></div><div><br></div><div>On NATMANAGE route i call directly</div><div><br></div><div>







<p class=""><span class="">route(RTPPROXY);</span></p><p class=""><span class=""><br></span></p><p class=""><span class="">Hope this helps</span></p><p class=""><span class=""><br></span></p><p class=""><span class="">-----</span></p></div><div><br></div><div>







<p class=""><span class="">route[RTPPROXY] {</span></p>
<p class=""><span class="">        if (is_method("INVITE")){</span></p><p class=""><span class="">if(ds_is_from_list(1)){</span></p><p class=""><span class="">                if (is_ip_rfc1918("$si")) {</span></p><p class=""><span class="">                                xlog("L_INFO", "LLamada desde los Asterisk_$si -> RTPPROXY\n");</span></p><p class=""><span class="">                        if (sdp_get_line_startswith("$avp(mline)", "m="))</span></p><p class=""><span class="">                        {</span></p><p class=""><span class="">                                #!ifdef WITH_RTPENGINE</span></p><p class=""><span class="">                                if ($avp(mline) =~ "SAVP")</span></p><p class=""><span class="">                                {</span></p><p class=""><span class="">                                xlog("L_INFO", "Tenemos SRTP ");</span></p><p class=""><span class="">                                xlog("L_INFO", "Llamada entre Extensiones -> RTPENGINE INTERNAL");</span></p><p class=""><span class="">                                rtpengine_manage("direction=internal replace-origin replace-session-connection ICE=remove");</span></p><p class=""><span class="">                                return;</span></p><p class=""><span class="">                                }</span></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                if ($avp(mline) =~ "AVP")</span></p><p class=""><span class="">                                {</span></p><p class=""><span class="">                                xlog("L_INFO", "Tenemos RTP ");</span></p><p class=""><span class="">                                xlog("L_INFO", "Llamada entre Extensiones -> RTPROXY ");</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                #!ifdef WITH_RTPPROXY</span></p><p class=""><span class="">                                 set_rtp_proxy_set("1");</span></p><p class=""><span class="">                                rtpproxy_manage("fwei");</span></p><p class=""><span class="">                                start_recording();</span></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                #!ifdef WITH_RTPENGINE</span></p><p class=""><span class="">                                set_rtp_proxy_set("2");</span></p><p class=""><span class="">                                rtpproxy_manage("ie");</span></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class="">                                }</span></p><p class=""><span class="">                        }</span></p><p class=""><span class=""></span></p><p class=""><span class=""></span></p><p class=""><span class="">












































</span></p><p class=""><span class="">                        }</span></p><p class=""><span class="">               }else if(!ds_is_from_list()){</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                        if (sdp_get_line_startswith("$avp(mline)", "m="))</span></p><p class=""><span class="">                        {</span></p><p class=""><span class="">                                 #!ifdef WITH_RTPENGINE</span></p><p class=""><span class="">                                 if ($avp(mline) =~ "SAVP")</span></p><p class=""><span class="">                                {</span></p><p class=""><span class="">                                xlog("L_INFO", "Tenemos SRTP ");</span></p><p class=""><span class="">                                xlog("L_INFO", "Llamada entre Extensiones -> RTPENGINE EXTERNAL ");</span></p><p class="">                                rtpengine_manage("direction=external replace-origin replace-session-connection ICE=remove");<br><span class=""></span></p><p class=""><span class="">                                return;</span></p><p class=""><span class="">                                }</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class="">                                if ($avp(mline) =~ "AVP")</span></p><p class=""><span class="">                                {</span></p><p class=""><span class="">                                xlog("L_INFO", "Tenemos RTP ");</span></p><p class=""><span class="">                                xlog("L_INFO", "Llamada entre Extensiones -> RTPROXY ");</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                #!ifdef WITH_RTPPROXY</span></p><p class=""><span class="">                                set_rtp_proxy_set("1");</span></p><p class=""><span class="">                                rtpproxy_manage("fwie");</span></p><p class=""><span class="">                                start_recording();</span></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                #!ifdef WITH_RTPENGINE</span></p><p class=""><span class="">                                set_rtp_proxy_set("2");</span></p><p class=""><span class="">                                rtpproxy_manage("ei");</span></p><p class=""><span class="">                                #!endif</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">                                }</span></p><p class=""><span class="">                        }</span></p><p class=""><span class=""></span><br></p><p class=""><span class=""></span><br></p><p class=""><span class="">                }</span></p><p class=""><span class="">      }</span></p><p class=""><span class=""></span><br></p><p class=""><span class="">













































</span></p><p class=""><span class="">}</span></p><p class=""><span class=""><br></span></p></div></div><div class="gmail_extra"><br><div class="gmail_quote">2015-07-14 14:24 GMT+02:00 Vasiliy Ganchev <span dir="ltr"><<a href="mailto:vasiliy.ganchev@wildix.com" target="_blank">vasiliy.ganchev@wildix.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Alberto Sagredo-2 wrote<br>
> ...<br>
<span class="">> I have been able to make SRTP To RTP to Asterisk<br>
><br>
</span><span class="">> But im not able to call between SRTP extensions, i understand also SRTP to<br>
> RTP would work as im doing with Asterisk (Only the speak SRTP as rtpengine<br>
> trasncode)<br>
><br>
><br>
</span><span class="">> If you need any more info let me know.<br>
><br>
</span>> _______________________________________________<br>
> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list<br>
<br>
> sr-users@.sip-router<br>
<br>
> <a href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users" rel="noreferrer" target="_blank">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a><br>
<br>
Hi!<br>
If you make SRTP to RTP to Asterisk, you possibly will need vice versa<br>
conversion (when request coming from Asterisk to client with SRTP).<br>
<br>
Can you describe the logic of test case: (UA-A (SRTP) --> Kamailio (make<br>
SRTP->RTP) .... etc.<br>
<br>
Because your explanation is difficult to understand.<br>
<br>
Cheers!<br>
<br>
<br>
<br>
--<br>
View this message in context: <a href="http://sip-router.1086192.n5.nabble.com/Issue-handling-SRTP-and-RTP-with-rtpproxy-and-rtpengine-tp139488p139521.html" rel="noreferrer" target="_blank">http://sip-router.1086192.n5.nabble.com/Issue-handling-SRTP-and-RTP-with-rtpproxy-and-rtpengine-tp139488p139521.html</a><br>
Sent from the Users mailing list archive at Nabble.com.<br>
<br>
_______________________________________________<br>
SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list<br>
<a href="mailto:sr-users@lists.sip-router.org">sr-users@lists.sip-router.org</a><br>
<a href="http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users" rel="noreferrer" target="_blank">http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users</a><br>
</blockquote></div><br></div>