Hi,
We run Kamailio 3.2.3 (FLAVOUR=ser) on an embedded ARM platform in near-
default configuration.
In a duration test, we observe that at a certain moment Kamailio seems to
start ignoring all (re-)register messages, and eventually expires the
existing registrations.
We have not been able to reproduce the issue using debug-level logging
(-dddd). Info-level logging (-ddd) does reproduce the error, but does not
produce any error messages.
Configuration: ser-basic.cfg, with the following changes:
port=5060
alias=testnet
Command line:
ser -m 4 -f /etc/ser/ser-basic.cfg -n3 -l udp:eth0
Load:
Bursts of 8 (Re-)REGISTER messages that are repeated every 85 seconds. The
specified expiration time is 120 seconds.
Bursts of 9 (Re-)INVITE messages that are repeated every 45 seconds.
Note:
With this load it takes roughly 1 hour for the error to occur. Using a more
standard 3600 second expiration time Kamailio still stalls, it just takes
longer.
Does anyone have any idea how to tackle this issue?
Kind regards,
Michiel Veldkamp
Hi all
I am looking for a free billing solution usable with Kamailio.
I currently use the sp from siremis - so far it works fine!
I need to get a solution where I can add credit limits for users/trunks or credit limits for carriers (eg. If we made a prepayment).
I thing JBilling could be great - but I think the Telco version will cost a monthly fee..
Other ideas or solutions?
Btw:
The invoice itself will be made in an ERP system - so I actually just need the rating and credit-management to handle the routings.
Regards,
Oli
Hi all,
I´m using EXEC Module to execute a HTTP request via curl, to comunicate
with another app like this:
exec_avp("curl --connect-timeout 1 --max-time 2
http://IP_ADDR:PORT/PATH/'$fU'/'$tU'/'$hdr(Call-ID)'",
"$avp(s:output)");
Sometimes Kamailio blocks when HTTP server does not response in time,
despite the max-time parameter.
I found this know issue on EXEC module docs:
"There is currently no guarantee that scripts ever return and stop
blocking SIP server. (There is kill.c but it is not used along with the
current mechanisms based on popen. Besides that kill.c is ugly)."
Does anyone know a better way to communicate Kamailio with a HTTP server
without blocks? I will try a python script to send the HTTP request and
call it with APP_PYTHON module. Has anyone had blocks with APP_PYTHON
module?
Thanks in advance.
--
*Victor*
Dear List,
I'd like to get help regarding my case.
I have the following script where many thanks to Daniel has helped me in
if (is_method("INVITE"))
{
if (!load_gws(1, $rU, $fu)) {
sl_send_reply("502", "Unable To lOad GatEwAyS");
exit;}
if(!next_gw()){
sl_send_reply("503", "Unable To fInD a gateWaY");
exit;}
while(next_gw()){
km_append_branch(); }
sl_send_reply("302","Moved Temporary");
exit;
}
The problem am facing is that the call is rerouting from the first gateway
to the next gateway successfully when I have two gateways. BUT when I have
three gateways, and the first two gateways are off, the call is not rerouted
to the third gateway. It keeps hitting the seconds gateway and gives request
time out at the end
Why is that?
Thanks in advance,
F Chahrour
Hi,
I am using MTREE and DIALPLAN modules to load lots of info to kamailio. (6
million rows).
When kamailio was running with 3.2.1 (no mem_join=1 option), the used size
was increasing but the process of loading the data was fast eanough.
I upgraded to 3.3.2 and set mem_join=1. Now the loading process take about
10 time longer and sometimes stops kamailio from responding to traffic.
Any ideas?
Thanks,
Uri
Hello,
I have few issues on my list to fix for 4.1 before the full release, but
I consider one week being enough time. Therefore I plan to release 4.1.0
next Wednesday, Dec 4, 2014.
If anyone would prefer a different plan, expose it on the mailing list
for further discussions.
Cheers,
Daniel
--
Daniel-Constantin Mierla - http://www.asipto.comhttp://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda
Hi,
I have a Kamailio 3.3.3 server that currently reports the following
errors upon execution of t_relay() for certain initial INVITEs.
daemon.err /usr/sbin/kamailio[26916]: ERROR: <core>
[sip_msg_clone.c:505]: ERROR: sip_msg_cloner: cannot allocate memory
daemon.err /usr/sbin/kamailio[26916]: ERROR: tm [t_lookup.c:1338]:
ERROR: new_t: out of mem:
daemon.err /usr/sbin/kamailio[26917]: ERROR: tm [t_lookup.c:1478]:
ERROR: t_newtran: new_t failed
I understand this error to be related to shared memory, based on [1].
However, sercmd reports normal shared memory utilization:
# sercmd core.shmmem
{
total: 67108864
free: 43189728
used: 20505784
real_used: 23919136
max_used: 65948568
fragments: 36887
}
These figures are quite similar to another server with the same
configuration and Kamailio version, which is not reporting out-of-memory
errors.
# sercmd core.shmmem
{
total: 67108864
free: 40219536
used: 23241952
real_used: 26889328
max_used: 66306288
fragments: 37832
}
I recently saw similar symptoms on a Kamailio 4.0.4 server, but
Kamailio unfortunately crashed before I could get further details. In
this case, I can consistently duplicate the problem with certain
INVITEs. It seems that the failure is somehow related to the size of the
SIP headers. For example, I have an INVITE from a Polycom phone which
t_relay() routes successfully with 741 bytes of headers (total SIP
length 1039 bytes). However, it seems that if I add one character to any
of its SIP headers (742 bytes of headers; total SIP length 1039 bytes)
the t_relay() will consistently fail.
This binary doesn't have DBG_QM_MALLOC configured (I am working on
getting it re-compiled). However, since I don't know what caused the
problem, I would still like to get as much information as I can out of
the running system. I have attached the output of mi_statistics, as well
as mem_dump_pkg for the external UDP receivers and the ctl handler. Are
there any other diagnostics that could be useful?
-Andrew
[1]
http://www.kamailio.org/dokuwiki/doku.php/troubleshooting:faq#qwhat_does_er…
Hello,
I have such infrastructure:
Asterisk1 (provider 1) - IP1
Asterisk2 (provider 2) - IP2
Softphones on client computers with configured two IPs to two Asterisk servers. User has to manually switch between each server.
I need to change this that user will have only one account configured (eg. Kamailio) and Kamailio will be used only to forward to Ast1 or Ast2 by previously defined rules. How is it possible?
comp1 --------> Kamailio -------> Ast1
comp2 --------> Kamailio -------> Ast1
comp3 --------> Kamailio -------> Ast2
comp4 --------> Kamailio -------> Ast2
Thank you,
Marcin
I am spinning up my first instance of Kamailio and I can't seem to get it to start.
I think my issue lies in the kamailio.cfg file, but I don't want to smash that entire file here, it is basically the default.
I try to start and get this...
root@kh1:/usr/local/etc/kamailio# /etc/init.d/kamailio debug start
Starting Kamailio:
loading modules under /usr/local/lib/kamailio/modules_k/:/usr/local/lib64/kamailio/modules/
Listening on
udp: 127.0.0.1:5060
udp: xxx:5060
udp: 192.168.xxxx:5060
tcp: 127.0.0.1:5060
tcp: xxxx:5060
tcp: 192.168.xxx:5060
Aliases:
tcp: kh1:5060
tcp: kh1.xxxx.com:5060
tcp: localhost:5060
udp: kh1:5060
udp: kh1.xxxx.com:5060
udp: localhost:5060
kamailio error, failed to start.
I am running a fresh load of Debian ..
Linux kh1 3.2.0-4-amd64 #1 SMP Debian 3.2.51-1 x86_64 GNU/Linux
I am using a mysql backend.
Nothing is in production.
What else can I provide you to help me figure this out?
Thank you.
Respectfully,
Tom Allen
Virtual Technologies Group