<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta content="text/html;charset=ISO-8859-1" http-equiv="Content-Type">
</head>
<body bgcolor="#ffffff" text="#000000">
Do you need to proxy calls to asterisk? If that is the case, you need
to make sure that the NAT flag is set.<br>
g-)<br>
<br>
Arun Kumar wrote:
<blockquote
cite="mida70a109b0701101957k714d2682s996db572965ba5f8@mail.gmail.com"
type="cite">Hi,<br>
<br>
I've configured my SER to send calls to my Asterisk server when user
connects to ser and dial a number ser forwards this to my Asterisk
server and my asterisk server ask for my pin number saying "Please
enter your pin number". In this config I'm using
rewritehostport(ip:port) to forward the calls and its working fine.
But, Now I've implemented the LCR when I see ngrep calls are going to
my asterisk server but I'm not able to hear any sound from my asterisk
server saying "enter your pin number". Please help in this issue. Here
is my ser.cfg file :<br>
<br>
debug=3<br>
fork=no<br>
log_stderror=yes<br>
<br>
listen=<a href="http://192.168.2.210">192.168.2.210</a> # INSERT
YOUR IP ADDRESS HERE<br>
port=5060<br>
children=4<br>
<br>
dns=no<br>
rev_dns=no
<br>
fifo="/tmp/ser_fifo"<br>
fifo_db_url="mysql://ser:arun@localhost/ser"<br>
<br>
loadmodule "/usr/local/lib/ser/modules/mysql.so"<br>
loadmodule "/usr/local/lib/ser/modules/sl.so"
<br>
loadmodule "/usr/local/lib/ser/modules/tm.so"<br>
loadmodule "/usr/local/lib/ser/modules/rr.so"<br>
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"<br>
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
<br>
loadmodule "/usr/local/lib/ser/modules/registrar.so"<br>
loadmodule "/usr/local/lib/ser/modules/auth.so"<br>
loadmodule "/usr/local/lib/ser/modules/auth_db.so"<br>
loadmodule "/usr/local/lib/ser/modules/uri.so"
<br>
loadmodule "/usr/local/lib/ser/modules/uri_db.so"<br>
loadmodule "/usr/local/lib/ser/modules/domain.so"<br>
loadmodule "/usr/local/lib/ser/modules/nathelper.so"<br>
loadmodule "/usr/local/lib/ser/modules/avpops.so"
<br>
loadmodule "/usr/local/lib/ser/modules/textops.so"<br>
loadmodule "/usr/local/lib/ser/modules/mediaproxy.so"<br>
loadmodule "/usr/local/lib/ser/modules/permissions.so"<br>
loadmodule "/usr/local/lib/ser/modules/acc.so"
<br>
loadmodule "/usr/local/lib/ser/modules/auth_radius.so"<br>
loadmodule "/usr/local/lib/ser/modules/lcr.so"<br>
loadmodule "/usr/local/lib/ser/modules/xlog.so"<br>
<br>
modparam("auth_db|permissions|uri_db|usrloc|domain", "db_url", "
mysql://ser:arun@localhost/ser")<br>
modparam("auth_db", "calculate_ha1", 1)<br>
modparam("auth_db", "password_column", "password")<br>
<br>
modparam("nathelper", "rtpproxy_disable", 1)
<br>
modparam("nathelper", "natping_interval", 0)<br>
<br>
modparam("mediaproxy","natping_interval", 30)<br>
modparam("mediaproxy","mediaproxy_socket",
"/var/run/mediaproxy.sock")
<br>
#
modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/ser/sip-clients")<br>
#
modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/ser/rtp-clients")<br>
<br>
modparam("usrloc", "db_mode", 2)<br>
<br>
modparam("registrar", "nat_flag", 6)<br>
<br>
modparam("rr", "enable_full_lr", 1)<br>
<br>
modparam("tm", "fr_inv_timer", 120)
<br>
modparam("tm", "fr_inv_timer_avp", "inv_timeout")<br>
<br>
modparam("permissions", "db_mode", 1)<br>
modparam("permissions", "trusted_table", "trusted")
<br>
<br>
modparam("lcr","db_url", "mysql://ser:arun@localhost/ser")<br>
modparam("lcr","gw_table","gw")<br>
modparam("lcr","gw_name_column","gw_name")
<br>
modparam("lcr","ip_addr_column","ip_addr")<br>
modparam("lcr","port_column","port")<br>
modparam("lcr","grp_id_column","grp_id")
<br>
modparam("lcr","lcr_table","lcr")<br>
modparam("lcr","prefix_column","prefix")<br>
modparam("lcr","from_uri_column","from_uri")
<br>
modparam("lcr","priority_column","priority")<br>
modparam("lcr","contact_avp","1401")<br>
modparam("lcr","fr_inv_timer_avp","fr_inv_timer_avp")
<br>
modparam("lcr","fr_inv_timer",90)<br>
modparam("lcr","fr_inv_timer_next",60)<br>
# ------ Account and Radius modules--------------<br>
modparam("acc", "db_url", "
mysql://ser:arun@localhost/ser")<br>
<br>
modparam("acc","log_level",1)<br>
modparam("acc","log_flag",1)<br>
modparam("acc", "db_flag", 1)<br>
<br>
modparam("acc","radius_flag",1)
<br>
modparam("acc","service_type",15)<br>
#modparam("acc","radius_config","/usr/local/etc/radiusclient-ng/radiusclient.conf")<br>
<br>
<br>
route {<br>
<br>
# -----------------------------------------------------------------
<br>
# Sanity Check Section<br>
# -----------------------------------------------------------------<br>
if (!mf_process_maxfwd_header("10")) {<br>
sl_send_reply("483", "Too Many Hops");
<br>
break;<br>
};<br>
<br>
if (msg:len > max_len) {<br>
sl_send_reply("513", "Message Overflow");<br>
break;<br>
};<br>
<br>
if (!load_gws()) {<br>
sl_send_reply("500", "Server Internal Error - Cannot load
gateways");
<br>
break;<br>
} else {<br>
xlog("L_INFO", "\n[SER]: - [$Tf] Method: <$rm> R-uri:
<$ru> From: <$fu>To <$tu> : Successfully Loaded
Gateway List\n");<br>
};
<br>
<br>
# -----------------------------------------------------------------<br>
# Record Route Section<br>
# -----------------------------------------------------------------<br>
if (method=="INVITE" && client_nat_test("3")) { <br>
# INSERT YOUR IP ADDRESS HERE<br>
record_route_preset("<a href="http://192.168.2.210:5060">192.168.2.210:5060</a>;nat=yes");<br>
} else if (method!="REGISTER") {<br>
record_route();
<br>
};<br>
<br>
<br>
# -----------------------------------------------------------------<br>
# Call Tear Down Section<br>
# -----------------------------------------------------------------<br>
if (method=="BYE" || method=="CANCEL") { <br>
setflag(1);<br>
end_media_session();<br>
};<br>
<br>
# -----------------------------------------------------------------<br>
# Loose Route Section<br>
# -----------------------------------------------------------------
<br>
if (loose_route()) {<br>
if ((method=="INVITE" || method=="REFER") &&
!has_totag()) {<br>
sl_send_reply("403", "Forbidden Cant cross 1st bridge");<br>
break;
<br>
};<br>
<br>
if (method=="INVITE") {<br>
<br>
if (!allow_trusted()) {<br>
<br>
if (!proxy_authorize("","subscriber")) {<br>
proxy_challenge("","0");
<br>
break;<br>
} else if (!check_from()) {<br>
sl_send_reply("403", "Use From=ID");<br>
break;<br>
};<br>
<br>
consume_credentials();<br>
};
<br>
<br>
if (client_nat_test("3")||search("^Route:.*;nat=yes")){<br>
setflag(6);<br>
use_media_proxy();<br>
};<br>
};<br>
<br>
route(1);<br>
break;<br>
};
<br>
<br>
# -----------------------------------------------------------------<br>
# Call Type Processing Section<br>
# -----------------------------------------------------------------<br>
if (!is_uri_host_local()) {<br>
if (is_from_local() || allow_trusted()) {<br>
sl_send_reply("404", "I am trusted host, ");<br>
route(4);<br>
route(1);<br>
} else {<br>
sl_send_reply("403", "Forbidden, I am here");
<br>
};<br>
break;<br>
};<br>
<br>
if (method=="ACK") { <br>
setflag(1);<br>
route(1);<br>
break;<br>
} if (method=="CANCEL") { <br>
setflag(1);<br>
route(1);<br>
break;<br>
} else if (method=="INVITE") { <br>
setflag(1);<br>
route(3);<br>
break;<br>
} else if (method=="REGISTER") {<br>
route(2);<br>
break;<br>
};<br>
<br>
lookup("aliases");<br>
if (!is_uri_host_local()) {<br>
route(4);<br>
route(1);<br>
break;<br>
};<br>
<br>
if (!lookup("location")) {<br>
sl_send_reply("404", "User Not Found");<br>
break;<br>
};<br>
<br>
route(1);<br>
}<br>
<br>
route[1] {<br>
<br>
# -----------------------------------------------------------------<br>
# Default Message Handler<br>
# -----------------------------------------------------------------<br>
t_on_reply("1");<br>
<br>
if (!t_relay()) {<br>
<br>
if (method=="INVITE" || method=="ACK") { <br>
setflag(1);<br>
end_media_session();<br>
};<br>
<br>
sl_reply_error();<br>
};<br>
<br>
}<br>
route[2] {<br>
<br>
# -----------------------------------------------------------------<br>
# REGISTER Message Handler<br>
# -----------------------------------------------------------------<br>
<br>
sl_send_reply("100", "Trying");
<br>
<br>
if (!search("^Contact:[ ]*\*") && client_nat_test("7")) {<br>
setflag(6);<br>
fix_nated_register();<br>
force_rport();<br>
};<br>
<br>
if (!www_authorize("","subscriber")) {
<br>
www_challenge("","0");<br>
break;<br>
};<br>
<br>
if (!check_to()) {<br>
sl_send_reply("401", "Unauthorized");<br>
break;<br>
};<br>
<br>
consume_credentials();<br>
<br>
if (!save("location")) {<br>
sl_reply_error();<br>
};<br>
<br>
}<br>
route[3] {<br>
<br>
# -----------------------------------------------------------------<br>
# INVITE Message Handler<br>
# -----------------------------------------------------------------
<br>
<br>
if (client_nat_test("3")) {<br>
setflag(7);<br>
force_rport();<br>
fix_nated_contact();<br>
};<br>
<br>
if (!allow_trusted()) {<br>
<br>
if (!proxy_authorize("","subscriber")) {
<br>
proxy_challenge("","0");<br>
break;<br>
} else if (!check_from()) {<br>
sl_send_reply("403", "Use From=ID");<br>
break;<br>
};<br>
<br>
consume_credentials();
<br>
};<br>
<br>
if (!is_uri_host_local()) {<br>
route(4);<br>
route(1);<br>
break;<br>
};<br>
<br>
if (!next_gw()) {<br>
t_reply("503", "Service not available - No more gateways");<br>
break;<br>
} else {<br>
t_on_failure("2"); <br>
t_relay();<br>
break;<br>
};<br>
<br>
route(4);<br>
route(1);<br>
}<br>
<br>
route[4] {<br>
<br>
# -----------------------------------------------------------------
<br>
# NAT Traversal Section<br>
# -----------------------------------------------------------------<br>
<br>
if (isflagset(6) || isflagset(7)) {<br>
if (!isflagset(8)) {<br>
setflag(8);<br>
use_media_proxy();
<br>
};<br>
};<br>
}<br>
<br>
#route[5] {<br>
<br>
# -----------------------------------------------------------------<br>
# PSTN Handler<br>
# -----------------------------------------------------------------<br>
<br>
# rewritehostport("
<a href="http://192.168.2.202:5060">192.168.2.202:5060</a>"); #
INSERT YOUR PSTN GATEWAY IP ADDRESS<br>
<br>
# avp_write("i:45", "inv_timeout");<br>
<br>
# route(1);<br>
#}<br>
<br>
onreply_route[1] {<br>
xlog("L_INFO", "In onreply route");<br>
if ((isflagset(6) || isflagset(7)) &&<br>
(status=~"(180)|(183)|2[0-9][0-9]")) {<br>
<br>
if (!search("^Content-Length:[ ]*0")) {
<br>
use_media_proxy();<br>
};<br>
};<br>
<br>
if (client_nat_test("1")) {<br>
fix_nated_contact();<br>
};<br>
}<br>
<br>
failure_route[2] {<br>
<br>
if (!next_gw()) {<br>
t_reply("503", "Service not available - No more gateways");
<br>
break;<br>
} else {<br>
t_on_failure("2");<br>
t_relay();<br>
break;<br>
}<br>
}<br>
<br>
<br>
thanks<br>
arun<br>
<pre wrap="">
<hr size="4" width="90%">
_______________________________________________
Serusers mailing list
<a class="moz-txt-link-abbreviated" href="mailto:Serusers@lists.iptel.org">Serusers@lists.iptel.org</a>
<a class="moz-txt-link-freetext" href="http://lists.iptel.org/mailman/listinfo/serusers">http://lists.iptel.org/mailman/listinfo/serusers</a>
</pre>
</blockquote>
</body>
</html>