<div>Hi,</div>
<div> </div>
<div>I used the 'engage_media_proxy();' in the main routing. This should create a dialog and then enable the media proxy if needed. Please correct me if I have misunderstood this feature.</div>
<div> </div>
<div>Regards,</div>
<div> </div>
<div>Ross<br><br></div>
<div class="gmail_quote">2009/10/29 osiris123d <span dir="ltr"><<a href="mailto:duane.larson@gmail.com">duane.larson@gmail.com</a>></span><br>
<blockquote style="BORDER-LEFT: #ccc 1px solid; MARGIN: 0px 0px 0px 0.8ex; PADDING-LEFT: 1ex" class="gmail_quote"><br>In your config I don't see you calling the use_media_proxy() function<br>anywhere. This is needed in order to proxy the media.<br>
<br>Do you have the OpenSIPS mediaproxy module installed and have the parameters<br>set up?<br>Check this link out.<br><a href="http://www.opensips.org/Resources/DocsTutorials#toc12" target="_blank">http://www.opensips.org/Resources/DocsTutorials#toc12</a><br>
<br>You are going to need to use use_media_proxy() a couple of places in your<br>config depending on what you want to accomplish.<br>
<div>
<div></div>
<div class="h5"><br><br><br>Ross Beer-2 wrote:<br>><br>> Hi,<br>><br>> I am using MediaProxy to help get over some one way audio issues, however<br>> it<br>> appears to be causing more problems than it is fixing.<br>
><br>> When I make a call between two registered phones there is no audio at all,<br>> but when I call a gateway audio passes correctly.<br>><br>> Looking at the logs it indicates that it has RTP & RTCP for one phone but<br>
> only RTP for the other:<br>><br>> -------------------------------------------------------------------------------------------------------------------------------------------------------------<br>> *media-relay[11366]: debug: Received new SDP offer<br>
> media-relay[11366]: mediaproxy.mediacontrol.StreamListenerProtocol<br>> starting<br>> on 50060<br>> media-relay[11366]: mediaproxy.mediacontrol.StreamListenerProtocol<br>> starting<br>> on 50061<br>> media-relay[11366]: mediaproxy.mediacontrol.StreamListenerProtocol<br>
> starting<br>> on 50062<br>> media-relay[11366]: mediaproxy.mediacontrol.StreamListenerProtocol<br>> starting<br>> on 50063<br>> media-relay[11366]: debug: Added new stream: (audio)<br>> 192.168.2.200:5638(RTP: Unknown, RTCP: Unknown) <-> <SERVER IP<br>
> ADDRESS>:50060 <-> <SERVER IP<br>> ADDRESS>:50062 <-> Unknown (RTP: Unknown, RTCP: Unknown)<br>> media-relay[11366]: debug: created new session<br>> NWZmMmMwMzAxNDM5YjdiYTAwMDYxYTViNTllMTczMWI.:<br>
</div></div>> **10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>*<10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>> * (b62884c7) --> **10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>* <10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>
<div class="im">> *media-relay[11366]: debug: Got traffic information for stream: (audio)<br>> <a href="http://192.168.2.200:5638/" target="_blank">192.168.2.200:5638</a> (RTP: Unknown, RTCP: Unknown) <-> <SERVER IP<br>
> ADDRESS>:50060 <-> <SERVER IP ADDRESS>:50062 <-> Unknown (RTP: <Clients<br>> Router IP>:57096, RTCP: Unknown)<br>> media-dispatcher[11369]: debug: Issuing "update" command to relay at<br>
> <SERVER<br>> IP ADDRESS><br>> media-relay[11366]: debug: updating existing session<br>> NWZmMmMwMzAxNDM5YjdiYTAwMDYxYTViNTllMTczMWI.:<br></div>> **10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>*<10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>
> * (b62884c7) --> **10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>* <10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>
<div class="im">> *media-relay[11366]: debug: Received updated SDP answer<br>> media-relay[11366]: debug: Got initial answer from callee for stream:<br>> (audio) <a href="http://192.168.2.200:5638/" target="_blank">192.168.2.200:5638</a> (RTP: Unknown, RTCP: Unknown) <-> <SERVER IP<br>
> ADDRESS>:50060 <-> <SERVER IP ADDRESS>:50062 <-> <a href="http://192.168.2.10:40022/" target="_blank">192.168.2.10:40022</a> (RTP:<br>> <Clients Router IP>:57096, RTCP: Unknown)<br>> media-relay[11366]: debug: Got traffic information for stream: (audio)<br>
> <a href="http://192.168.2.200:5638/" target="_blank">192.168.2.200:5638</a> (RTP: Unknown, RTCP: <Clients Router IP>:55671) <-><br>> <SERVER IP ADDRESS>:50060 <-> <SERVER IP ADDRESS>:50062 <-><br>
> <a href="http://192.168.2.10:40022/" target="_blank">192.168.2.10:40022</a> (RTP: <Clients Router IP>:57096, RTCP: Unknown)<br>> media-relay[11366]: debug: Got traffic information for stream: (audio)<br>> <a href="http://192.168.2.200:5638/" target="_blank">192.168.2.200:5638</a> (RTP: <Clients Router IP>:55670, RTCP: <Clients Router<br>
> IP>:55671) <-> <SERVER IP ADDRESS>:50060 <-> <SERVER IP ADDRESS>:50062 <-><br>> <a href="http://192.168.2.10:40022/" target="_blank">192.168.2.10:40022</a> (RTP: <Clients Router IP>:57096, RTCP: Unknown)<br>
> media-dispatcher[11369]: debug: Issuing "remove" command to relay at<br>> <SERVER<br>> IP ADDRESS><br>> media-relay[11366]: debug: removing session<br>> NWZmMmMwMzAxNDM5YjdiYTAwMDYxYTViNTllMTczMWI.:<br>
</div>> **10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>*<10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>> * (b62884c7) --> **10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>* <10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>><br>
<div class="im">> *media-relay[11366]: (Port 50060 Closed)<br>> media-relay[11366]: (Port 50061 Closed)<br>> media-relay[11366]: (Port 50062 Closed)<br>> media-relay[11366]: (Port 50063 Closed)<br>> media-dispatcher[11369]: debug: Got statistics: {'from_tag': 'b62884c7',<br>
> 'dialog_id': '841:447573368', 'start_time': 1256818436.3299999,<br>> 'timed_out':<br>> False, 'call_id': 'NWZmMmMwMzAxNDM5YjdiYTAwMDYxYTViNTllMTczMWI.',<br>> 'to_tag':<br>
> '7t0mkzlie0', 'streams': [{'status': 'closed', 'caller_codec': 'G711u',<br>> 'post_dial_delay': 1.252835989, 'callee_codec': '1016', 'start_time': 0,<br>
> 'caller_bytes': 82000, 'callee_bytes': 83600, 'caller_packets': 410,<br>> 'end_time': 8, 'callee_remote': '<Clients Router IP>:57096',<br>> 'caller_remote': '<Clients Router IP>:55670', 'media_type': 'audio',<br>
> 'callee_local': '<SERVER IP ADDRESS>:50062', 'timeout_wait': 0,<br>> 'caller_local': '<SERVER IP ADDRESS>:50060', 'callee_packets': 418}],<br>> 'duration': 8, 'to_uri':<br>
</div>> **'10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>'*<'10001*<a href="mailto:200@mydomain.com">200@mydomain.com</a>'><br>> *, 'from_uri': **'10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>'* <'10002*<a href="mailto:200@mydomain.com">200@mydomain.com</a>'>*,<br>
<div>
<div></div>
<div class="h5">> 'callee_ua': 'snom370/7.3.26', 'caller_ua': 'X-Lite Beta release 4.0 Beta<br>> 2<br>> stamp 55091'}*<br>> -------------------------------------------------------------------------------------------------------------------------------------------------------------<br>
><br>> I am using the following OpenSIP's config:<br>><br>><br>><br>> # main routing logic<br>><br>> route{<br>><br>> # initial sanity checks -- messages with<br>><br>> # max_forwards==0, or excessively long requests<br>
><br>> if (!mf_process_maxfwd_header("10")) {<br>><br>> sl_send_reply("483","Too Many Hops");<br>><br>> exit;<br>><br>> };<br>><br>> if (msg:len >= 2048 ) {<br>
><br>> sl_send_reply("513", "Message too big");<br>><br>> exit;<br>><br>> };<br>><br>> # !! Nathelper<br>><br>> # Special handling for NATed clients; first, NAT test is<br>
><br>> # executed: it looks for via!=received and RFC1918 addresses<br>><br>> # in Contact (may fail if line-folding is used); also,<br>><br>> # the received test should, if completed, should check all<br>
><br>> # vias for rpesence of received<br>><br>> if (nat_uac_test("31"))<br>><br>> {<br>><br>> # Allow RR-ed requests, as these may indicate that<br>><br>> # a NAT-enabled proxy takes care of it; unless it is<br>
><br>> # a REGISTER<br>><br>> xlog("Behind a NAT\n");<br>><br>> if (is_method("REGISTER"))<br>><br>> {<br>><br>> fix_nated_register();<br>><br>> }<br>><br>> fix_nated_contact();<br>
><br>> force_rport(); # Add rport parameter to topmost Via<br>><br>> #setbflag(6); # Mark as NATed<br>><br>> };<br>><br>> # we record-route all messages -- to make sure that<br>><br>> # subsequent messages will go through our proxy; that's<br>
><br>> # particularly good if upstream and downstream entities<br>><br>> # use different transport protocol<br>><br>> if (!is_method("REGISTER"))<br>><br>> record_route();<br>><br>> if(is_method("INVITE"))<br>
><br>> {<br>><br>> fix_nated_sdp("1");<br>><br>> create_dialog();<br>><br>> fix_nated_sdp("8");<br>><br>> engage_media_proxy();<br>><br>> }<br>><br>> # subsequent messages withing a dialog should take the<br>
><br>> # path determined by record-routing<br>><br>> if (loose_route()) {<br>><br>> # mark routing logic in request<br>><br>> append_hf("P-hint: rr-enforced\r\n");<br>><br>> route(1);<br>
><br>> exit;<br>><br>> };<br>><br>> if (!uri==myself) {<br>><br>> # mark routing logic in request<br>><br>> append_hf("P-hint: outbound\r\n");<br>><br>> route(1);<br>><br>
> exit;<br>><br>> };<br>><br>> # if the request is for other domain use UsrLoc<br>><br>> # (in case, it does not work, use the following command<br>><br>> # with proper names and addresses in it)<br>
><br>> if (uri==myself)<br>><br>> {<br>><br>> if (is_method("REGISTER"))<br>><br>> {<br>><br>> # Uncomment this if you want to use digest authentication<br>><br>> #if (!www_authorize("<a href="http://siphub.org/" target="_blank">siphub.org</a>", "subscriber")) {<br>
><br>> # www_challenge("<a href="http://siphub.org/" target="_blank">siphub.org</a>", "0");<br>><br>> # return;<br>><br>> #};<br>><br>> save("location");<br>><br>> exit;<br>
><br>> };<br>><br>> # native SIP destinations are handled using our USRLOC DB<br>><br>> if (!lookup("location"))<br>><br>> {<br>><br>> # Local Device Not Found Send To Gateway<br>><br>
> rewritehostport("<gateway>:5065");<br>><br>> }<br>><br>> };<br>><br>> append_hf("P-hint: usrloc applied\r\n");<br>><br>> route(1);<br>><br>> }<br>><br>> route[1]<br>
><br>> {<br>><br>> # !! Nathelper<br>><br>> # if (uri=~"[@:](192\.168\.|10\.|172\.(1[6-9]|2[0-9]|3[0-1])\.)" &&<br>> !search("^Route:"))<br>><br>> # {<br>><br>> # sl_send_reply("479", "We don't forward to private IP addresses");<br>
><br>> # exit;<br>><br>> # };<br>><br>> # NAT processing of replies; apply to all transactions (for example,<br>><br>> # re-INVITEs from public to private UA are hard to identify as<br>><br>> # NATed at the moment of request processing); look at replies<br>
><br>> t_on_reply("1");<br>><br>> # send it out now; use stateful forwarding as it works reliably<br>><br>> # even for UDP2TCP<br>><br>> if (!t_relay()) {<br>><br>> sl_reply_error();<br>
><br>> };<br>><br>> }<br>><br>> # !! Nathelper<br>><br>> onreply_route[1]<br>><br>> {<br>><br>> if (nat_uac_test("31"))<br>><br>> {<br>><br>> # Allow RR-ed requests, as these may indicate that<br>
><br>> # a NAT-enabled proxy takes care of it; unless it is<br>><br>> # a REGISTER<br>><br>> xlog("Reply Behind a NAT");<br>><br>> fix_nated_contact();<br>><br>> force_rport(); # Add rport parameter to topmost Via<br>
><br>> #setbflag(6); # Mark as NATed<br>><br>> };<br>><br>> }<br>><br></div></div>
<div class="im">> _______________________________________________<br>> Users mailing list<br>> <a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br>> <a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
><br>><br><br>--<br></div>View this message in context: <a href="http://n2.nabble.com/MediaProxy-No-Audio-Problems-tp3911881p3913596.html" target="_blank">http://n2.nabble.com/MediaProxy-No-Audio-Problems-tp3911881p3913596.html</a><br>
Sent from the OpenSIPS - Users mailing list archive at Nabble.com.<br>
<div>
<div></div>
<div class="h5"><br>_______________________________________________<br>Users mailing list<br><a href="mailto:Users@lists.opensips.org">Users@lists.opensips.org</a><br><a href="http://lists.opensips.org/cgi-bin/mailman/listinfo/users" target="_blank">http://lists.opensips.org/cgi-bin/mailman/listinfo/users</a><br>
</div></div></blockquote></div><br>