<DIV>
<DIV>hi,</DIV>
<DIV>I did admin the other SER and that works. Thanx.</DIV>
<DIV>Now&nbsp;if the&nbsp;request is for foreign calls I&nbsp;send the request from my OPENSER to a foreign SER&nbsp;. That SER does trust me through the source IP. We buy pstn minutes from them. Now the calls are possible when the users are with public IP and also behind NAT. But when the call is for the Cisco phone that is to be handled by the Foriegn SER it does not get established neither the rtp sesions gets established between my SER and the end called party.</DIV>
<DIV>Can u pls suggest a particular way to handle such calls. Can u pls suggest wat might b the problem. Thanx a lot</DIV>
<DIV>&nbsp;</DIV>
<DIV>My configuration is:</DIV>
<DIV>&nbsp;</DIV>
<DIV>debug=3<BR>fork=yes<BR>log_stderror=no</DIV>
<DIV>listen=203.XXX.64.XX&nbsp;&nbsp;# INSERT YOUR IP ADDRESS HERE<BR>port=5060<BR>children=4</DIV>
<DIV>dns=no<BR>rev_dns=no</DIV>
<DIV>fifo="/tmp/ser_fifo"<BR>fifo_db_url="mysql://openser:openserrw@localhost/openser"</DIV>
<DIV>loadmodule "/usr/local/lib/openser/modules/mysql.so"<BR>loadmodule "/usr/local/lib/openser/modules/sl.so"<BR>loadmodule "/usr/local/lib/openser/modules/tm.so"<BR>loadmodule "/usr/local/lib/openser/modules/rr.so"<BR>loadmodule "/usr/local/lib/openser/modules/maxfwd.so"<BR>loadmodule "/usr/local/lib/openser/modules/usrloc.so"<BR>loadmodule "/usr/local/lib/openser/modules/registrar.so"<BR>loadmodule "/usr/local/lib/openser/modules/auth.so"<BR>loadmodule "/usr/local/lib/openser/modules/auth_db.so"<BR>loadmodule "/usr/local/lib/openser/modules/uri.so"<BR>loadmodule "/usr/local/lib/openser/modules/uri_db.so"<BR>loadmodule "/usr/local/lib/openser/modules/mediaproxy.so"<BR>loadmodule "/usr/local/lib/openser/modules/nathelper.so"<BR>loadmodule "/usr/local/lib/openser/modules/textops.so"<BR>loadmodule "/usr/local/lib/openser/modules/avpops.so"<BR>loadmodule "/usr/local/lib/openser/modules/domain.so"<BR>loadmodule "/usr/local/lib/openser/modules/permissions.so"<BR>loadmodule
 "/usr/local/lib/openser/modules/acc.so"</DIV>
<DIV>modparam("auth_db|permissions|uri_db|usrloc|acc", <BR>&nbsp;"db_url", "mysql://openser:openserrw@localhost/openser")<BR>modparam("auth_db", "calculate_ha1", 1)<BR>modparam("auth_db", "password_column", "password")</DIV>
<DIV>modparam("nathelper", "rtpproxy_disable", 1)<BR>modparam("nathelper", "natping_interval", 0)</DIV>
<DIV>modparam("mediaproxy","natping_interval", 30)<BR>modparam("mediaproxy","mediaproxy_socket", "/var/run/mediaproxy.sock")<BR>modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/ser/sip-asymmetric-clients")<BR>modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/ser/rtp-asymmetric-clients")</DIV>
<DIV>modparam("usrloc", "db_mode", 2)</DIV>
<DIV>modparam("registrar", "nat_flag", 6)</DIV>
<DIV>modparam("rr", "enable_full_lr", 1)</DIV>
<DIV>modparam("tm", "fr_inv_timer", 27)<BR>modparam("tm", "fr_inv_timer_avp", "inv_timeout")</DIV>
<DIV>modparam("permissions", "db_mode", 1)<BR>modparam("permissions", "trusted_table", "trusted")</DIV>
<DIV>modparam("acc", "log_level", 1)<BR>modparam("acc", "log_flag", 1)<BR>modparam("acc", "db_flag", 1)</DIV>
<DIV>route {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Sanity Check Section<BR>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;if (!mf_process_maxfwd_header("10")) {<BR>&nbsp;&nbsp;sl_send_reply("483", "Too Many Hops");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (msg:len &gt; max_len) {<BR>&nbsp;&nbsp;sl_send_reply("513", "Message Overflow");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Record Route Section<BR>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;if (method=="INVITE" &amp;&amp; client_nat_test("3")) {<BR>&nbsp;&nbsp;# INSERT YOUR IP ADDRESS HERE<BR>&nbsp;&nbsp;record_route_preset("203.XXX.64.XX:5060;nat=yes");<BR>&nbsp;} else if (method!="REGISTER") {&nbsp;<BR>&nbsp;&nbsp;record_route();&nbsp;<BR>&nbsp;};</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Call Tear Down Section<BR>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;if (method=="BYE" || method=="CANCEL") {<BR>&nbsp;&nbsp;end_media_session();<BR>&nbsp;};</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Loose Route Section<BR>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;if (loose_route()) {</DIV>
<DIV>&nbsp;&nbsp;if (has_totag() &amp;&amp; (method=="INVITE" || method=="ACK")) {</DIV>
<DIV>&nbsp;&nbsp;&nbsp;if (client_nat_test("3")||search("^Route:.*;nat=yes")){<BR>&nbsp;&nbsp;&nbsp;&nbsp;setflag(6);<BR>&nbsp;&nbsp;&nbsp;&nbsp;use_media_proxy();<BR>&nbsp;&nbsp;&nbsp;};<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Call Type Processing Section<BR>&nbsp;# -----------------------------------------------------------------</DIV>
<DIV>&nbsp;if (uri!=myself) {<BR>&nbsp;&nbsp;route(5);<BR>&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (uri==myself) {</DIV>
<DIV>&nbsp;&nbsp;if (method=="ACK") {<BR>&nbsp;&nbsp;&nbsp;route(6);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;} else if (method=="CANCEL") {<BR>&nbsp;&nbsp;&nbsp;route(3);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;} else if (method=="INVITE") {<BR>&nbsp;&nbsp;&nbsp;route(3);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;} else &nbsp;if (method=="REGISTER") {<BR>&nbsp;&nbsp;&nbsp;route(2);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;lookup("aliases");<BR>&nbsp;&nbsp;if (uri!=myself) {<BR>&nbsp;&nbsp;&nbsp;route(5);<BR>&nbsp;&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;if (!lookup("location")) {<BR>&nbsp;&nbsp;&nbsp;sl_send_reply("404", "User Not Found");<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};<BR>&nbsp;};</DIV>
<DIV>&nbsp;route(1);<BR>}</DIV>
<DIV>route[1] {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# Default Message Handler<BR>&nbsp;# -----------------------------------------------------------------</DIV>
<DIV>&nbsp;t_on_reply("1");</DIV>
<DIV>&nbsp;if (!t_relay()) {</DIV>
<DIV>&nbsp;&nbsp;if (method=="INVITE" || method=="ACK") {<BR>&nbsp;&nbsp;&nbsp;end_media_session();<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;sl_reply_error();<BR>&nbsp;};<BR>}</DIV>
<DIV>route[2] {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# REGISTER Message Handler<BR>&nbsp;# -----------------------------------------------------------------</DIV>
<DIV>&nbsp;sl_send_reply("100", "Trying");</DIV>
<DIV>&nbsp;if (!search("^Contact:\ +\*") &amp;&amp; client_nat_test("7")) {<BR>&nbsp;&nbsp;setflag(6);<BR>&nbsp;&nbsp;fix_nated_register();<BR>&nbsp;&nbsp;force_rport();<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (!www_authorize("my_domain","subscriber")) {<BR>&nbsp;&nbsp;www_challenge("my_domain","0");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (!check_to()) {<BR>&nbsp;&nbsp;sl_send_reply("401", "Unauthorized");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;consume_credentials();</DIV>
<DIV>&nbsp;if (!save("location")) {<BR>&nbsp;&nbsp;sl_reply_error();<BR>&nbsp;};<BR>}</DIV>
<DIV>route[3] {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# CANCEL and INVITE Message Handler<BR>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;setflag(1);<BR>&nbsp;&nbsp;<BR>&nbsp;if (client_nat_test("3")) {<BR>&nbsp;&nbsp;setflag(7);<BR>&nbsp;&nbsp;force_rport();<BR>&nbsp;&nbsp;fix_nated_contact();<BR>&nbsp;};</DIV>
<DIV>&nbsp;<BR>&nbsp;&nbsp;if (method=="INVITE" &amp;&amp; !allow_trusted()) {</DIV>
<DIV>&nbsp;&nbsp;if (!proxy_authorize("my_domain","subscriber")) {<BR>&nbsp;&nbsp;&nbsp;proxy_challenge("my_domain","0");<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;} else if (!check_from()) {<BR>&nbsp;&nbsp;&nbsp;sl_send_reply("403", "Use From=ID");<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;consume_credentials();<BR>&nbsp;};</DIV>
<DIV>&nbsp;lookup("aliases");<BR>&nbsp;if (uri!=myself) {<BR>&nbsp;&nbsp;route(5);<BR>&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (uri=~"^sip:011[0-9]*@") {&nbsp;&nbsp;# International PSTN<BR>&nbsp;&nbsp;route(4);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (!lookup("location")) {</DIV>
<DIV>&nbsp;&nbsp;if (uri=~"^sip:[0-9]{10}@") {&nbsp;# Domestic PSTN<BR>&nbsp;&nbsp;&nbsp;route(4);<BR>&nbsp;&nbsp;&nbsp;break;<BR>&nbsp;&nbsp;};</DIV>
<DIV>&nbsp;&nbsp;sl_send_reply("404", "User Not Found");<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (method=="CANCEL") {<BR>&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;route(5);<BR>&nbsp;route(1);<BR>}</DIV>
<DIV>route[4] {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# PSTN Handler<BR>&nbsp;# -----------------------------------------------------------------</DIV>
<DIV>&nbsp;#rewritehost("66.XXX.11.XX"); # INSERT YOUR PSTN GATEWAY IP ADDRESS</DIV>
<DIV>&nbsp;avp_write("i:45", "inv_timeout");</DIV>
<DIV>&nbsp;route(5);<BR>&nbsp;route(1);<BR>}</DIV>
<DIV>route[5] {</DIV>
<DIV>&nbsp;# -----------------------------------------------------------------<BR>&nbsp;# RTP Proxy Enabler<BR>&nbsp;# -----------------------------------------------------------------</DIV>
<DIV>&nbsp;if (isflagset(6) || isflagset(7)) {<BR>&nbsp;&nbsp;use_media_proxy();<BR>&nbsp;};<BR>}</DIV>
<DIV>route[6] {</DIV>
<DIV>&nbsp;# ------------------------------------------------------------------------<BR>&nbsp;# ACK Handler<BR>&nbsp;# ------------------------------------------------------------------------</DIV>
<DIV>&nbsp;# ------------------------------------------------------------------------<BR>&nbsp;# Aliases Section<BR>&nbsp;# ------------------------------------------------------------------------<BR>&nbsp;lookup("aliases");<BR>&nbsp;if (uri!=myself) {<BR>&nbsp;&nbsp;route(5);<BR>&nbsp;&nbsp;route(1);<BR>&nbsp;&nbsp;break;<BR>&nbsp;};</DIV>
<DIV>&nbsp;lookup("location");</DIV>
<DIV>&nbsp;route(1);<BR>}</DIV>
<DIV><BR>onreply_route[1] {</DIV>
<DIV>&nbsp;if ((isflagset(6) || isflagset(7)) &amp;&amp; <BR>&nbsp;&nbsp;&nbsp;&nbsp; (status=~"(180)|(183)|2[0-9][0-9]")) {</DIV>
<DIV>&nbsp;&nbsp;if (!search("^Content-Length:\ +0")) {<BR>&nbsp;&nbsp;&nbsp;use_media_proxy();<BR>&nbsp;&nbsp;};<BR>&nbsp;};</DIV>
<DIV>&nbsp;if (client_nat_test("1")) {<BR>&nbsp;&nbsp;fix_nated_contact();<BR>&nbsp;};<BR>}<BR></DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV>
<DIV>&nbsp;</DIV></DIV><p>
                <hr size=1> <a href="http://us.rd.yahoo.com/evt=34442/*http://www.yahoo.com/r/hs">Start your day with Yahoo! - make it your home page </a>