Hello,
OpenSER 0.9.5 fails if the connection to MySQL is broken or times out
while ser is running. Is there any way to have the server reconnect
intelligently? I currently have the MySQL timeout set to five days, but
I would prefer a real fix. Ser and mysql are both running on the same
server.
Thanks,
Mike Williams
Here's some of my syslog output:
Aug 12 07:33:43 sip /usr/local/sbin/openser[12542]: submit_query():
MySQL server has gone away
Aug 12 07:33:43 sip /usr/local/sbin/openser[12542]: submit_query():
Error while submitting query
Aug 12 07:33:43 sip /usr/local/sbin/openser[12542]: get_ha1(): Error
while querying database
Aug 12 07:33:51 sip /usr/local/sbin/openser[12558]: submit_query():
MySQL server has gone away
Aug 12 07:33:51 sip /usr/local/sbin/openser[12558]: submit_query():
Error while submitting query
Aug 12 07:33:51 sip /usr/local/sbin/openser[12558]: get_ha1(): Error
while querying database
Aug 12 07:34:11 sip /usr/local/sbin/openser[12542]: submit_query():
MySQL server has gone away
Aug 12 07:34:11 sip /usr/local/sbin/openser[12542]: submit_query():
Error while submitting query
Aug 12 07:34:11 sip /usr/local/sbin/openser[12542]: get_ha1(): Error
while querying database
Aug 12 07:34:13 sip /usr/local/sbin/openser[12558]: submit_query():
MySQL server has gone away
Aug 12 07:34:13 sip /usr/local/sbin/openser[12558]: submit_query():
Error while submitting query
Aug 12 07:34:13 sip /usr/local/sbin/openser[12558]: get_ha1(): Error
while querying database
I have followed all the advice i could find in the mailing list and google.
I have mysql.so in modules directory, uncommented the sql bit in the
makefile, I used "make all" when compiling.
The config has the relevant parameters set i think:
# --acc params--
modparam("acc", "log_level", 1)
modparam("acc", "log_flag", 1)
modparam("acc", "log_missed_flag", 2)
modparam("acc", "log_fmt", "fimos")
#modparam("acc", "db_url", "sql://ser:heslo@localhost/ser")
#modparam("acc", "db_missed_flag", 2)
#modparam("acc", "db_flag", 1)
modparam("usrloc", "db_url", "mysql://ser:heslo@localhost/ser")
modparam("usrloc", "db_mode", 2)
Also in SERWEB, when i click the accounting tab i get an error ->
error in SQL query (1), line: 48 No calls
The rest of serwbe works fine for adding users etc.
Can anyone point me in the right direction.
Dear serusers,
I have downloaded the ser-0.9.13 source code and compiled it on a FC4. It can be started succesfully WITHOUT mysql support and I can make phone alls.
But when I add the mysql modules in ser.cfg and start ser, it shows the following error message:
0(20691) ERROR: load_module: could not open module </usr/local/lib/ser/modules/mysql.so>: /usr/local/lib/ser/modules/mysql.so: undefined symbol: ERR_get_error_line_data
0(20691) parse error (29,13-14): failed to load module
ERROR: bad config file (1 errors)
I checked the mysql.so file and the database and both are right. Can anyone give me a help?
Thanks.
Best Regards,
iceboy
Hello,
this topic was last discussed here:
http://lists.iptel.org/pipermail/serusers/2005-May/019551.html
last few days i was trying to apply juha's move() function with almost no success to 0.9.3 stable branch.
i added such code to my ser.cfg:
onreply_route[1] {
xlog("L_NOTICE", "Reply status %rs: Reason %rr\n");
if (t_check_status("30[12]")) {
xlog("L_NOTICE", "We got a 30[12]!!!!!\n");
t_move(); # custom function by juha
#t_reply();
};
}
and modified move() code like this:
inline static int move(struct sip_msg* _m, char *_foo, char *_bar)
{
//struct sip_msg* reply;
regmatch_t pmatch[2];
struct hdr_field hf;
contact_t* first;
regex_t contact_re;
// What is it? didn't find anywere.
//reply = _m->final_reply;
// MOD HERE
if (!_m) {
LOG(L_ERR, "move(): No reply found\n");
return -1;
}
LOG(L_ERR, "move(): unparsed part of reply: %s\n", _m->unparsed);
// FIXME: where to put this? initialisation?
// MOD HERE
regcomp(&contact_re, "^Contact:(.*)$", REG_EXTENDED|REG_NEWLINE);
if ( ( regexec(&contact_re, _m->unparsed, 2, &(pmatch[0]), 0) != 0) || (pmatch[1].rm_so == -1)) {
LOG(L_ERR, "move(): No Contact header found\n");
return -1;
}
hf.type = HDR_CONTACT;
hf.name.len = 0;
hf.body.len = pmatch[1].rm_eo - pmatch[1].rm_so - 1;
hf.body.s = &(_m->unparsed[pmatch[1].rm_so]);
hf.len = hf.body.len + 2;
hf.parsed = NULL;
hf.next = NULL;
// this prints out redirected contact
LOG(L_ERR, "hf.body: '%.*s'\n", hf.body.len, hf.body.s);
if (parse_contact(&hf) < 0) {
LOG(L_ERR, "move(): Error while parsing Contact\n");
goto failure;
}
if (((contact_body_t*)hf.parsed)->star == 1) {
LOG(L_ERR, "move(): Contact is *\n");
goto failure;
}
first = ((contact_body_t*)hf.parsed)->contacts;
if (first) {
// MOD HERE
if (append_branch(_m, first->uri.s, first->uri.len, 0, 0, Q_UNSPECIFIED) == 1) {
goto success;
} else {
LOG(L_ERR, "move(): Appending branch failed\n");
}
} else {
LOG(L_ERR, "move(): No contacts in Contact header\n");
}
failure:
if (hf.parsed) {
free_contact((contact_body_t**)(&(hf.parsed)));
}
return -1;
success:
free_contact((contact_body_t**)(&(hf.parsed)));
return 1;
}
it seems that t_move succeeds(), contact gets parsed and append_branch() gets execuded. But then, nothing happens. 302 is replied back to call originator. It is function build_res_buf_from_sip_res is called() which builds 302 message back to call originator..
It seems that after getting contact from 302 message, INVITE sould be generatated somehow. I suspect that i am passing wrong message to append_branch, but i didn't found how to access INVITE from tm module while in onreply_route[].
Can anybody with deeper ser knowledge help?
Antanas
hi daniel,
Thanx a lot. There was actually a problem in my
configuration. I corrected it. The problem was with
the reply route handling.
Thanx again.
Can someone pls suggest what could be the best way to
handle broken calls from the configuration script.
I've
read earlier that one can implement it through the
gateway if gateway supports it. But pls suggest the
best approach to handle it through the script. And can
u pls
make me understand what exactly are failed
transactions.
Thanx again.
Jayesh.
____________________________________________________
Start your day with Yahoo! - make it your home page
http://www.yahoo.com/r/hs
You may also wanna try Addpac
Marc
-----Original Message-----
From: serusers-bounces(a)iptel.org [mailto:serusers-bounces@lists.iptel.org] On
Behalf Of Jan Janak
Sent: Friday, August 12, 2005 10:51 AM
To: Sebastian Milioto
Cc: serusers(a)lists.iptel.org
Subject: Re: [Serusers] Any comments about WellTech FXO/FXS device
I would recommend Sipura.
Jan.
On 11-08-2005 20:24, Sebastian Milioto wrote:
> We are an ISP about to deploy an VoIP enterprise solution for about 50
> costumers. We are looking for fxo/fxs, fxo and fxs devices. We know
about
> Sipura, Welltech, Cisco, Patton. Which one do you recommend taking
into
> account :
>
> 1. Easy installation and configuration
> 2. Performance
> 3. Durability
> 4. Simultaneous calls, etc
>
> May be you could reccomend another brand also.
> Thank you very much for your time
>
>
> Sebastian Milioto
> Telecommunication Engineer
> --------------------------------
> IM: sebamilioto(a)hotmail.com
> Mobile: +549-3571-15540598
> e-mail: smilioto(a)GMAIL.com
> --------------------------------
>
>
>
> _______________________________________________
> Serusers mailing list
> serusers(a)lists.iptel.org
> http://lists.iptel.org/mailman/listinfo/serusers
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers
Hi all:
I am confused what function will signal rtpproxy the port mapping while
the nat traversal is activated?
Does "force_rtp_proxy" achieve that function ?
In the doc
http://www.iptel.org/ser/doc/modules/txt/nathelper.txt
Maxim says that "force_rtp_proxy" will "Rewrites SDP body to ensure that
media is passed through an RTP proxy."
Does it means the function "force_rtp_proxy" will change the port in SDP,
and also signal rtpproxy the port mapping that he should transport ?
Thanks in advance
Brian
Hi all,
I want to log online / talking user to database so I can put them at
my website to monitor them web based.
Is there anyone implement it ? what table should I use ?
acctive_sessions or else ? and what should I add at my ser.cfg ?
btw, is I monitor talking user shell on my server, I use checksessions
but I want this checksessions at my website
Rgrds,
Asep
You have to set first all destinations and afterwards call t_relay, which will manage all the previous destinations. To add destinations, the easyest is to use append_branch();
So:
rewritehost(gateway)
append_branch(B2BUI)
t_relay();
Check spelling the spelling of previous commands, they are just an indication of how to use them, in the tm module README you will find the right parameters.
Samuel.
Unclassified.
>>> Teran Jesus <jteran(a)mcmtelecom.com.mx> 08/12/05 12:09AM >>>
Hello, I have a problem, i need to transfere a "BYE" to my B2BUI and to my
gateway at the same time, i have used the rewritehost and the t_relay_to_udp
twice but only take me the first one.
¿Can you help me?
_______________________________________________
Serusers mailing list
serusers(a)lists.iptel.org
http://lists.iptel.org/mailman/listinfo/serusers