Hi Iqbal, I downloaded the gettingstarted_04.pdf and i'm now reading it. I didn't know that there is something like that document that explains every single detail of the ser.cfg for the benefit of the newbies. Well i'm a newbie and i think i must read it... i was configuring SER without even knowing the function of each parameter, i keep on guessing and testing just to know what this thing do... well that's very nice and i really thanks all the people here in this mailing list that helps the newbies like me to understand the SER in almost detail.
Thanks =) Ryan
Iqbal wrote:
Hi
quite a few probs in the config,I cant see you using record_route anywhere which means that your messages will not pass through SER, hence you will never (almost never) see a BYE, oops my mistake, there is a record_route, but you are just doing it on the INVITE, you need to do it for all messages which are not REGISTER, then you have to setflag everywhere, I know this may sound a little vague, but I would suggest downloading the startup config from www.onsip.org, in version 1 they have a very simple setup which will allow you to make IP -IP calls, and then they build from there, so try it out.
Iqbal
Ryan Pagquil wrote:
Hi Iqbal,
Ah ok, those queries will only generate the duration of INVITE
to BYE methods data from my database. But how can I get INVITE and BYE accounted in my ser.cfg? I have this ser.cfg that I made but it is not running, it gaves me an error (core dumped). Well just want to consult you on how can I make this ser.cfg to work and account for INVITE's and BYE's. Like just I said, I'm a very newbie with ser =).
This is the config file:
#debug=7 fork=no log_stderror=yes
check_via=no dns=no port=5060 listen=10.0.1.5 fifo_db_url="mysql://ser:heslo@localhost/ser" fifo="/tmp/ser_fifo"
#load needed modules
loadmodule "/usr/local/lib/ser/modules/mysql.so" loadmodule "/usr/local/lib/ser/modules/sl.so" loadmodule "/usr/local/lib/ser/modules/tm.so" loadmodule "/usr/local/lib/ser/modules/acc.so" loadmodule "/usr/local/lib/ser/modules/rr.so" loadmodule "/usr/local/lib/ser/modules/maxfwd.so" loadmodule "/usr/local/lib/ser/modules/registrar.so" loadmodule "/usr/local/lib/ser/modules/auth.so" loadmodule "/usr/local/lib/ser/modules/auth_db.so" loadmodule "/usr/local/lib/ser/modules/usrloc.so"
#parameter settings
#usr module param modparam("usrloc", "db_mode", 1)
#acc module param modparam("acc", "log_level", 1) modparam("acc", "log_flag", 1) modparam("acc", "log_fmt", "mpoft") modparam("acc", "report_ack", 1) modparam("acc", "db_url", "mysql://ser:heslo@localhost/ser") modparam("acc", "db_flag", 2) modparam("acc", "db_missed_flag", 3)
#auth_db param mysql authentication active modparam("auth_db", "calculate_ha1", yes) modparam("auth_db", "password_column", "password")
#rr module param modparam("rr", "enable_full_lr", 1)
####routing logic####
route{
if (!mf_process_maxfwd_header("10")) { sl_send_reply("483","To many HOPS"); break; }; if (msg:len >= max_len ) { sl_send_reply("513","Message too big"); break; }; if (uri==myself) { if (method=="REGISTER") { if (!www_authorize("server4all", "subscriber")) { www_challenge("server4all", "1"); break; }; save("location"); break; }; if (method=="INVITE") record_route(); setflag(1); }; if (!t_relay()) { sl_reply_error(); };
}
Thanks a lot,
Iqbal wrote:
put those queries in mysql and it should lookup your acc table
Iqbal
Ryan Pagquil wrote:
Hi, So the only concept on how will I account for duration is to account for INVITE and BYE methods...BTW, where will I put those queries? Sorry, I'm in a stage of discovering SER.=)
Thanks,
Java Rockx wrote:
Ryan,
This MySQL query should do the trick. It joins the acc table to itself. One side grabs INVITE messages and the other side grabs BYE messages.
NOTE: This will not work if you account for re-INVITE messages because you will then have multple INVITEs for the same call.
Regards, Paul
SELECT t1.from_uri as orig_number, t1.to_uri as term_number, TIMEDIFF(t2.time, t1.time) as duration, t1.timestamp as calldate FROM acc t1, acc t2 WHERE t1.sip_callid = t2.sip_callid AND ((t1.fromtag = t2.fromtag and t1.totag = t2.totag) OR (t1.fromtag = t2.totag and t1.totag = t2.fromtag)) AND t1.sip_method='INVITE' AND t2.sip_method='BYE'
On 7/4/05, Iqbal iqbal@gigo.co.uk wrote:
its records the INVITE and BYE, so fro there you can work out the session duration
Iqbal
Ryan Pagquil wrote:
> guys, > just want to ask if i can make ser to account session > durations > for billing purposes? > > Thanks, > >
Serusers mailing list serusers@lists.iptel.org http://lists.iptel.org/mailman/listinfo/serusers