I am totally stumped with the accounting module not inserting any data
into the mysql "acc" table. I can see the accounting entries in
syslog. There are no errors with mysql. I have started reading the
source code as a last resort but i dont have enough time left.
here is my config:
debug=4 # debug level (cmd line: -dddddddddd)
fork=yes
log_stderror=no # (cmd line: -E)
listen=sip.asianet.co.in
/* 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/ser_fifo"
# ------------------ module loading ----------------------------------
# Uncomment this if you want to use SQL database
loadmodule "/usr/local/lib/ser/modules/mysql.so"
loadmodule "/usr/local/lib/ser/modules/nathelper.so"
loadmodule "/usr/local/lib/ser/modules/sl.so"
loadmodule "/usr/local/lib/ser/modules/tm.so"
loadmodule "/usr/local/lib/ser/modules/rr.so"
loadmodule "/usr/local/lib/ser/modules/maxfwd.so"
loadmodule "/usr/local/lib/ser/modules/usrloc.so"
loadmodule "/usr/local/lib/ser/modules/registrar.so"
loadmodule "/usr/local/lib/ser/modules/textops.so"
loadmodule "/usr/local/lib/ser/modules/acc.so"
# Uncomment this if you want digest authentication
# mysql.so must be loaded !
#loadmodule "/usr/local/lib/ser/modules/auth.so"
#loadmodule "/usr/local/lib/ser/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)
modparam("usrloc", "db_url", "mysql://root:heslo@localhost/ser")
# -- 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)
# We will you flag 6 to mark NATed contacts
modparam("registrar", "nat_flag", 6)
# Enable NAT pinging
modparam("nathelper", "natping_interval", 60)
# Ping only contacts that are known to be
# behind NAT
modparam("nathelper", "ping_nated_only", 1)
modparam("acc", "log_level", 1)
modparam("acc", "log_flag", 1)
modparam("acc", "log_missed_flag", 3)
modparam("acc", "failed_transactions", 1)
modparam("acc", "report_cancels", 1)
modparam("acc", "db_url", "mysql://root:heslo@localhost/ser")
# ------------------------- 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");
break;
};
if (msg:len >= 2048 ) {
sl_send_reply("513", "Message too big");
break;
};
# special handling for NATed clients; first, nat test is
# executed: it looks for via!=received and RFC1918 addresses
# in Contact (may fail if line-folding used); also,
# the received test should, if complete, should check all
# vias for presence of received
if (nat_uac_test("3")) {
# allow RR-ed requests, as these may indicate that
# a NAT-enabled proxy takes care of it; unless it is
# a REGISTER
if (method == "REGISTER" || ! search("^Record-Route:")) {
log("LOG: Someone trying to register from private IP,
rewriting\n");
# This will work only for user agents that support symmetric
# communication. We tested quite many of them and majority is
# smart smart enough to be symmetric. In some phones, like
# it takes a configuration option. With Cisco 7960, it is
# called NAT_Enable=Yes, with kphone it is called
# "symmetric media" and "symmetric signaling". (The latter
# not part of public released yet.)
fix_nated_contact(); # Rewrite contact with source IP
of signalling
if (method == "INVITE") {
fix_nated_sdp("1"); # Add direction=active to SDP
log("LOG: fixing nated sdp");
};
force_rport(); # Add rport parameter to topmost Via
setflag(6); # Mark as NATed
};
};
# 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);
t_relay();
break;
};
if (method=="INVITE"){
setflag(1);
}
if (method=="BYE"){
setflag(1);
}
if (!uri==myself) {
# mark routing logic in request
append_hf("P-hint: outbound\r\n");
route(1);
break;
};
# 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("iptel.org", "subscriber")) {
# www_challenge("iptel.org", "0");
# break;
# };
save("location");
break;
};
lookup("aliases");
if (!uri==myself) {
append_hf("P-hint: outbound alias\r\n");
route(1);
break;
};
#if (uri=~"^sip:1[0-9]*@") { # International PSTN
# route(2);
# break;
#};
# native SIP destinations are handled using our USRLOC DB
if (uri=~"^sip:8[0-9]*@") { # ip to ip
if (lookup("location")) {
append_hf("P-hint: usrloc applied\r\n");
route(1);
break;
} else {
sl_send_reply("404", "Not Found");
break;
};
} else { #send to pstn gateway
route(2);
};
};
}
route[1]
{
#
# Forcing media relay if necessary
if (uri=~"[@:](192\.168\.|10\.|172\.16)" && !search("^Route:")){
sl_send_reply("479", "We don't forward to private IP addresses");
break;
};
if (isflagset(6)) {
force_rtp_proxy();
t_on_reply("1");
append_hf("P-Behind-NAT: Yes\r\n");
};
# send it out now; use stateful forwarding as it works reliably
# even for UDP2TCP
if (!t_relay()) {
sl_reply_error();
};
}
route[2] {
# -----------------------------------------------------------------
# PSTN Handler
# -----------------------------------------------------------------
setflag(1);
rewritehostport("192.168.1.1:5060"); # INSERT YOUR PSTN
GATEWAY IP ADDRESS
if (!t_relay()) {
sl_reply_error();
};
}
onreply_route[1] {
if (status =~ "(183)|2[0-9][0-9]") {
fix_nated_contact();
force_rtp_proxy();
};
}
--
Lay low and nourish in obscurity
Hi,
I try to configure WeSIP which should not be so hard according to
documentation. When I start OpenSER and WeSIP I get on the logs of OpenSER:
-1(0) Fantastic, we have a new client: wesip1
-1(0) Fantastic, we have a new client: wesip1
-1(0) EUREKA, we have a new completed AS: wesip1
Also on WeSIP log I get:
ExpressConnector [main] - SEAS module successfully connected
at 192.168.0.5:5080
But when I call the manager Web-GUI I get as a status of OpenSER:
Not SER connector available - Check the Configuration
This seems to be in contradiction to above logs, isn't it?
Any comment appreciated
Franz
Hi,
As you may work out Im not an expert in this, hopefully for those of you that are this is a pretty straight forward question.
Im trying to implement something like this:
Cisco_as5300 <-----> OpenSER <------> Atersisk
PSTN Gateway SIP Proxy PBX
^
Radius
I am attempting to setup OpenSER as a SIP proxy for a Cisco PSTN Gateway, on the other side of OpenSER I have an Asterisk system. My confusion centres around the connection between the end users (SNOM or whatever) which hang off Asterisk and the connection between Asterisk and OpenSER. I have configure Asterisk to SIP register to OpenSER, all works ok here and Asterisk sees OpenSER as a SIP peer and channel. The bit Im not getting is that when someone dials a number from a handset connected to Asterisk that needs to route out via OpenSER, Asterisk seems to pass the username and password credentials of the handset to OpenSER. Firstly if its going to do this, then what is the point of SIP registering Asterisk as its authenticating ever session as individual entities anyway, secondly this isnt scaleable :( it seems to mean I have to configure each SNOM user both in Asterisk and in OpenSER. All of which doesnt seem very logical, can anyone tell me if I'm doing something wrong or if Im approaching this in the wrong way or if I need to approach the problem in some other way...
The end goal of this is that Id like the ability to bill on a per SIP peer basis customer Asterisk boxes, I dont want to end up in a situation were I have to know about every SNOM a customer has.
many many thanks in advance, Im a bit stuck at the mo! thanks Andy.
HI
User ----> Broadsoft -----> SER (Added Broadsoft ip as Trusted ) ------>
Ser exten (Behind NAT)
from SER exten I can dial my Broadsoft exten works fine. But reverse is not
working fine.
Incoming call from Broadsoft exten to my ser exten (027113)
if (uri=~"^sip:027113@")
{
if (lookup("location")) {
route(4);
route(1);
break;
};
};
Hello,
for those that want to start updating the spec files for packages and
test them, I have created a README file that lists the new modules and
their dependencies, as well as suggestions for where to place the modules.
Also, I have uploaded today's source tarball, so all elements are in
single place. Please check:
http://www.openser.org/pub/openser/pre-1.3.0/
If you need further help, let me know. Comments and suggestions are welcome.
Cheers,
Daniel
Hi
User ---> SER -----> BroadoSoft -----> PSTN
when I send calls to PSTN I'm changing the From to one of BroadSoft users
b'coz without that BroadSoft don't allow me to Call PSTN. When call comes to
PSTN Route I'm changing the the From :
subst('/^From:(.*)sip:[^@]*@[a-zA-Z0-9.]+(.*)$/From:<
sip:8233843435@Broadsoft IP>/ig');
calls goes fine to Broadsoft and then to PSTN but, once call connect to PSTN
I'm able to hear other side but my phone always shows Calling and other side
is not able to hear me (b'coz from my side channel is not getting answered).
I tried forcing mediaproxy before PSTN Calls but no luck.
Please advise. Its very urgent.
Thanks,
Arun
How to install openser 1.3 there is any howto out there?
Best Regards
--
-\\_ Fabio Isgro'
-}}\_ Babel S.r.l. - http://www.babel.it
-}}}\-__ Tel. +39.06.91801075
}\/ -}}}\\°_\ Fax +39.06.91612446
}/\ }}}}\\ _/ Voip sip:9093@voip.babel.it
------ P.zza S.Benedetto da Norcia, 33 - 00040 Pomezia (Roma)
B ° a ° b° e° l
"CONFIDENZIALE: Questo messaggio ed i suoi allegati sono di carattere confidenziale per i destinatari in indirizzo. Se hai ricevuto questo messaggio per errore sei invitato cortesemente a rispondere immediatamente al mittente e cancellare tutti i suoi contenuti."