Hello Iqbal,
Yes, I am having all those modules present in proper directory. When I am
using this below openser.cfg conf file everything works fine, But i can't
call from SIP UA registered on openser to outside number.Infact I can recive
calls on SIP UA. Please help how to debug this problem. I will be very
thankful to you
#
# $Id: openser.cfg,v 1.5 2005/10/28 19:45:33 bogdan_iancu Exp $
#
# simple quick-start config script
#
# ----------- global configuration parameters ------------------------
debug=9 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no # (cmd line: -E)
# Uncomment these lines to enter debugging mode
#fork=no
#log_stderror=yes
check_via=no # (cmd. line: -v)
dns=no # (cmd. line: -r)
rev_dns=no # (cmd. line: -R)
port=5060
children=4
fifo="/tmp/openser_fifo"
#-----I had added from here---------------------------------
#listen=212.13.35.13
#port=5060
#children=4
#alias=212.13.35.13
#---------------Upto here-----------------------------------
# uncomment the following lines for TLS support
#disable_tls = 0
#listen = tls:your_IP:5061
#tls_verify = 1
#tls_require_certificate = 0
#tls_method = TLSv1
#tls_certificate = "/usr/local/etc/openser/tls/user/user-cert.pem"
#tls_private_key = "/usr/local/etc/openser/tls/user/user-privkey.pem"
#tls_ca_list = "/usr/local/etc/openser/tls/user/user-calist.pem"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
#loadmodule "/usr/local/lib/openser/modules/mysql.so"
loadmodule "/usr/local/lib/openser/modules/sl.so"
loadmodule "/usr/local/lib/openser/modules/tm.so"
loadmodule "/usr/local/lib/openser/modules/rr.so"
loadmodule "/usr/local/lib/openser/modules/maxfwd.so"
loadmodule "/usr/local/lib/openser/modules/usrloc.so"
loadmodule "/usr/local/lib/openser/modules/registrar.so"
#loadmodule "/usr/local/lib/openser/modules/mediaproxy.so" #--I had added
#loadmodule "/usr/local/lib/openser/modules/nathelper.so"#----I had added
loadmodule "/usr/local/lib/openser/modules/textops.so"
#loadmodule "/usr/local/lib/openser/modules/domain.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
#loadmodule "/usr/local/lib/openser/modules/auth.so"
#loadmodule "/usr/local/lib/openser/modules/auth_db.so"
# ----------------- setting module-specific parameters ---------------
# -- usrloc params --
modparam("usrloc", "db_mode", 0)
# Uncomment this if you want to use SQL database
# for persistent storage and comment the previous line
#modparam("usrloc", "db_mode", 2)
# -- auth params --
# Uncomment if you are using auth module
#
#modparam("auth_db", "calculate_ha1", yes)
#
# If you set "calculate_ha1" parameter to yes (which true in this config),
# uncomment also the following parameter)
#
#modparam("auth_db", "password_column", "password")
# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)
#--I had added here----------
#modparam("nathelper","rtpproxy_disable",1)
#modparam("nathelper","natping_interval",180)
#modparam("mediaproxy","natping_interval",30)
#modparam("mediaproxy","mediaproxy_socket","/var/run/mediaproxy.sock")
#modparam("mediaproxy","sip_asymmetrics","/usr/local/etc/openser/sip-asymmet
ric-clients")
#modparam("mediaproxy","rtp_asymmetrics","/usr/local/etc/openser/rtp-asymmet
ric-clients")
#modparam("domain","db_url","dbtext:/usr/local/etc/openser/domaintables")
#-----Upto here--------------
# ------------------------- request routing logic -------------------
# main routing logic
route{
# initial sanity checks -- messages with
# max_forwards==0, or excessively long requests
if (!mf_process_maxfwd_header("10")) {
sl_send_reply("483","Too Many Hops");
exit;
};
if (msg:len >= 2048 ) {
sl_send_reply("513", "Message too big");
exit;
};
# we record-route all messages -- to make sure that
# subsequent messages will go through our proxy; that's
# particularly good if upstream and downstream entities
# use different transport protocol
if (!method=="REGISTER")
record_route();
# subsequent messages withing a dialog should take the
# path determined by record-routing
if (loose_route()) {
# mark routing logic in request
append_hf("P-hint: rr-enforced\r\n");
route(1);
};
if (!uri==myself) {
# mark routing logic in request
append_hf("P-hint: outbound\r\n");
# if you have some interdomain connections via TLS
#if(uri=~"@tls_domain1.net") {
# t_relay_to_tls("IP_domain1","port_domain1");
# exit;
#} else if(uri=~"@tls_domain2.net") {
# t_relay_to_tls("IP_domain2","port_domain2");
# exit;
#}
route(1);
};
# if the request is for other domain use UsrLoc
# (in case, it does not work, use the following command
# with proper names and addresses in it)
if (uri==myself) {
if (method=="REGISTER") {
# Uncomment this if you want to use digest authentication
#if (!www_authorize("openser.org", "subscriber")) {
# www_challenge("openser.org", "0");
# exit;
#};
save("location");
exit;
};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
};
# native SIP destinations are handled using our USRLOC DB
if (!lookup("location")) {
sl_send_reply("404", "Not Found");
exit;
};
append_hf("P-hint: usrloc applied\r\n");
};
route(1);
}
route[1] {
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
exit;
}
----- Original Message -----
From: "Iqbal" <iqbal@gigo.co.uk>
To: "Lokesh Kumar" <lokesh@interacesso.pt>
Cc: "Norman Brandinger" <norm@goes.com>; <serusers@iptel.org>;
<users@openser.org>
Sent: Wednesday, November 30, 2005 12:32 PM
Subject: Re: [Users] Can anyone share his openser.cfg..in which openser is
routing calls to pstn gateway
have you got those modules that cant be found, and are they located in
that directory
iqbal
Lokesh Kumar wrote:
Hello Norman,
When I type openser start it gives me " ERROR: Bad config file (4
errors).
here is the messages i got from cat /var/log/messages
---------
Nov 30 11:05:01 ser crond(pam_unix)[26819]: session closed for user root
Nov 30 11:07:16 ser openser: ERROR: load_module: could not open module
<modules/sl/sl.so>: modules/sl/sl.so: cannot open shared object file: No
such file or directory
Nov 30 11:07:16 ser openser: parse error (10,13-14): failed to load
module
Nov 30 11:07:16 ser openser: ERROR: load_module: could not open module
<modules/tm/tm.so>: modules/tm/tm.so: cannot open shared object file: No
such file or directory
Nov 30 11:07:16 ser openser: parse error (11,13-14): failed to load
module
Nov 30 11:07:16 ser openser: parse error (12,1-2): syntax error
Nov 30 11:07:16 ser openser: parse error (12,1-2):
Nov 30 11:09:11 ser openser: ERROR: load_module: could not open module
<modules/sl/sl.so>: modules/sl/sl.so: cannot open shared object file: No
such file or directory
Nov 30 11:09:11 ser openser: parse error (10,13-14): failed to load
module
Nov 30 11:09:11 ser openser: ERROR: load_module: could not open module
<modules/tm/tm.so>: modules/tm/tm.so: cannot open shared object file: No
such file or directory
Nov 30 11:09:11 ser openser: parse error (11,13-14): failed to load
module
Nov 30 11:09:11 ser openser: parse error (12,1-2): syntax error
Nov 30 11:09:11 ser openser: parse error (12,1-2):
[root@ser openser]#
------------------------------
Here is my openser.cfg , In which i had commented mysql, and auth
modules.I
want the things works without any AAA, initially.
#
# $Id: pstn.cfg,v 1.2 2005/07/25 16:27:33 miconda Exp $
#
# example: ser configured as PSTN gateway guard; PSTN gateway is located
# at 192.168.0.10
#
# ------------------ module loading ----------------------------------
loadmodule "modules/sl/sl.so"
loadmodule "modules/tm/tm.so"
;loadmodule "modules/acc/acc.so"
loadmodule "modules/rr/rr.so"
loadmodule "modules/maxfwd/maxfwd.so"
;loadmodule "modules/mysql/mysql.so"
;loadmodule "modules/auth/auth.so"
;loadmodule "modules/auth_db/auth_db.so"
;loadmodule "modules/group/group.so"
loadmodule "modules/uri/uri.so"
# ----------------- setting module-specific parameters ---------------
;modparam("auth_db", "db_url","mysql://ser:heslo@localhost/ser")
;modparam("auth_db", "calculate_ha1", yes)
;modparam("auth_db", "password_column", "password")
# -- acc params --
;modparam("acc", "log_level", 1)
# that is the flag for which we will account -- don't forget to
# set the same one :-)
;modparam("acc", "log_flag", 1 )
# ------------------------- request routing logic -------------------
# main routing logic
route{
/* ********* ROUTINE CHECKS **********************************
*/
# filter too old messages
if (!mf_process_maxfwd_header("10")) {
log("LOG: Too many hops\n");
sl_send_reply("483","Too Many Hops");
return;
};
if (len_gt( max_len )) {
sl_send_reply("513", "Wow -- Message too large");
return;
};
/* ********* RR ********************************** */
/* grant Route routing if route headers present */
if (loose_route()) { t_relay(); return; };
/* record-route INVITEs -- all subsequent requests must visit us
*/
if (method=="INVITE") {
record_route();
};
# now check if it really is a PSTN destination which should be
handled
# by our gateway; if not, and the request is an invitation, drop
it --
# we cannot terminate it in PSTN; relay non-INVITE requests -- it
may
# be for example BYEs sent by gateway to call originator
if (!uri=~"sip:\+?[0-9]+@.*") {
if (method=="INVITE") {
sl_send_reply("403", "Call cannot be served
here");
} else {
forward(uri:host, uri:port);
};
return;
};
# account completed transactions via syslog
setflag(1);
# free call destinations ... no authentication needed
if ( is_user_in("Request-URI", "free-pstn") /* free destinations
*/
| uri=~"sip:[79][0-9][0-9][0-9]@.*" /* local
PBX
*/
| uri=~"sip:98[0-9][0-9][0-9][0-9]") {
log("free call");
} else if (src_ip==212.xx.35.xx) {
# our gateway doesn't support digest authentication;
# verify that a request is coming from it by source
# address
log("gateway-originated request");
} else {
# in all other cases, we need to check the request
against
# access control lists; first of all, verify request
# originator's identity
if (!proxy_authorize( "gateway" /* realm */,
"subscriber" /* table name */)) {
proxy_challenge( "gateway" /* realm */, "0" /* no
qop */ );
return;
};
# authorize only for INVITEs -- RR/Contact may result in
weird
# things showing up in d-uri that would break our logic;
our
# major concern is INVITE which causes PSTN costs
if (method=="INVITE") {
# does the authenticated user have a permission
for
local
# calls (destinations beginning with a single
zero)?
# (i.e., is he in the "local" group?)
if (uri=~"sip:0[1-9][0-9]+@.*") {
if (!is_user_in("credentials", "local"))
{
sl_send_reply("403", "No
permission
for local calls");
return;
};
# the same for long-distance (destinations begin
with two zeros")
} else if (uri=~"sip:00[1-9][0-9]+@.*") {
if (!is_user_in("credentials", "ld")) {
sl_send_reply("403", " no
permission
for LD ");
return;
};
# the same for international
calls
(three zeros)
} else if (uri=~"sip:000[1-9][0-9]+@.*") {
if (!is_user_in("credentials", "int")) {
sl_send_reply("403",
"International
permissions needed");
return;
};
# everything else (e.g., interplanetary calls) is
denied
} else {
sl_send_reply("403", "Forbidden");
return;
};
}; # INVITE to authorized PSTN
}; # authorized PSTN
# if you have passed through all the checks, let your call go to
GW!
rewritehostport("212.xx.35.xx:5060");
# forward the request now
if (!t_relay()) {
sl_reply_error();
return;
};
}
----- Original Message -----
From: "Norman Brandinger" <norm@goes.com>
To: "Lokesh Kumar" <lokesh@interacesso.pt>
Cc: <serusers@iptel.org>; <users@openser.org>
Sent: Tuesday, November 29, 2005 8:12 PM
Subject: Re: [Users] Can anyone share his openser.cfg..in which openser
is
routing calls to pstn gateway
Please post a summary of the error messages that you are receiving.
Lokesh Kumar wrote:
Hello,
I am trying to configure pstn gateway with openser.when i start
openser with default openser file it works fine, but i one direction.
i can dial on my SIP user agent from outside. but when i am using
pstn.cfg file as a openser.cfg(after rename). I am unable to even
start openser server. it gives me errors and crashed.I puts my pstn
gateway ip's in that file where requested.
Please please help
Regards
------------------------------------------------------------------------
_______________________________________________
Users mailing list
Users@openser.org
http://openser.org/cgi-bin/mailman/listinfo/users
_______________________________________________
Users mailing list
Users@openser.org
http://openser.org/cgi-bin/mailman/listinfo/users
.
_______________________________________________
Users mailing list
Users@openser.org
http://openser.org/cgi-bin/mailman/listinfo/users