Hi All,
If run Kamailio in Active/Passive mode lets say there are 100 transactions going on Active node and then Active went down, now i want passive to be aware of all those ongoing transactions so that it can handle ongoing calls transactions smoothly so how to store them in db? Is there any way to do so? i know there is module dialog for tracking calls etc but i just want to handle transactions.
Thanks in advance.
Ram
Hello everyone,
While going through the WebRTC example configuration (cfg) to better
understand and implement it in my setup, I came across a potential issue in
the code block. The code in question can be found at this link:
https://github.com/kamailio/kamailio/blob/465994de2859c7863b4cef8457be0a207…
In the code, there is an "if else" block, "if(loose_route())" that seems to
be incorrect. It appears that the "if" block will always evaluate to true,
given that "loose_route" never returns 0. According to the documentation,
the return values of "loose_route" are specified as 1, 2, -1, -2, -3.
Therefore, it seems the "if" block is unnecessary, and the "else" block
will never be executed. Could someone please confirm this observation and,
if accurate, suggest a correction for the code?
Thank you for your attention to this matter.
Best regards,
Pavan Kumar
Hello list,
I'm using Kamailio to balance SIP request between two Asterisk. I have a
problem with Parking calls using Asterisk Application. When a user
parking a call, some times can't pick up parked call because the call to
pick up the Call go to the other Asterisk.
I'm using the 1 algorithm "hash over from URI" without success.
Any hint?
--
---
I'm SoCIaL, MayBe
Hello,
I'm trying to set up the dispatcher module from kamailio, but I'm running into errors just loading the dispatcher module and setting the params in my config file and would like to know where I'm going wrong.
I've added destinations through kamctl as well and whenever I try to use dispatcher reload or dispatcher dump, I get a 500 error saying neither of those methods are found.
I'm using kamailio version 5.6.3 and these are the errors I'm getting when starting up kamailio:
/usr/sbin/kamailio[102176]: ERROR: dispatcher [dispatch.c:824]: ds_load_list(): can't open list file [/etc/kamailio/dispatcher.list]
/usr/sbin/kamailio[102176]: ERROR: dispatcher [dispatcher.c:434]: mod_init(): no dispatching list loaded from file
/usr/sbin/kamailio[102176]: ERROR: <core> [core/sr_module.c:974]: init_mod(): Error while initializing module dispatcher (/usr/lib/x86_64-linux-gnu/kamailio/modules/dispatcher.so)
Many thanks in advance,
Temi
Hello all, little and fast context, we have 8 docker swarm clusters (4 nodes each) where there are deployed as global service 4 kamailio per cluster. Each cluster runs 8 replicas of a call processing service/app (for the sake of this question we’ll assume the performance of this app is ok, no problems on what it does and how much it consumes in cpu/memory).
kamailio is configured to use http_client module to query the processing app (those queries are load balanced by the docker swarm cluster) in a very simple way, added below in this email.
Everything goes well, there’s an average of ~450 caps on each kamailio on peak hours.
Question and reason of this email is: Is this the best approach i can take? (the http_client) or maybe there’s a more efficient one for this scenario? maybe kemi, or other?
The processing app is written in golang.
We’re planning to add more traffic (significantly more) to this instances and i would like to know if there’s a better scenario, to explore it before this migration.
Thanks, regards
—
request_route {
route(AF_SL);
}
route[AF_SL] {
if(is_method("ACK")){
exit;
}
if(is_method("REGISTER")){
sl_reply("200", "OK");
exit;
}
if(is_method("OPTIONS")){
sl_reply("200", "OK");
exit;
}
if(is_method("CANCEL")){
sl_reply("200","OK");
sl_reply("487","Request Terminated");
exit;
}
if(is_method("INVITE")){
if ($hdr(X-Carrier-In)!="" && $hdr(Organization)!="" && $hdr(X-SBC-Type)!="") {
sl_reply("100","Trying");
$var(retCode) = http_client_query("http://cbrcre:3001/cbrcre/v1/callHandler",'xsbct=$(hdr(X-SBC-Type){s.escape.param})&org=$(hdr(Organization){s.escape.param})&xci=$(hdr(X-Carrier-In){s.escape.param})&fu=$(fu{s.escape.param})&ru=$(ru{s.escape.param})&rU=$(rU{s.escape.param})&fU=$(fU{s.escape.param})&ci=$(ci{s.escape.param})&cin=$(hdr(Call-Info){s.escape.param})&ih=$hdr(Identity)&tag=$(ft{s.escape.param})&ct=$(ct{s.escape.param})&via=$(hdr(Via)[0]{s.escape.param})', "$var(result)");
xlog("L_INFO", "*************** RESULT: $var(result)\n\n");
jansson_get("response_code", "$var(result)", "$var(rc)");
switch($var(rc)){
case "200":
if jansson_get("contact", "$var(result)", "$var(ct)") == true {
append_branch("$var(ct)");
}
if jansson_get("callinfo", "$var(result)", "$var(cinfo)") == true {
append_to_reply("Call-Info: $var(cinfo)\r\n");
}
if jansson_get("pai", "$var(result)", "$var(pai)") ==true {
append_to_reply("P-Asserted-Identity: $var(pai)\r\n");
}
if jansson_get("xfrom", "$var(result)", "$var(xfrom)") ==true {
append_to_reply("X-From: $var(xfrom)\r\n");
}
if jansson_get("identity", "$var(result)", "$var(identity)") ==true {
append_to_reply("Identity: $var(identity)\r\n");
}
append_to_reply("X-Handled: ServiceBroker\r\n");
sl_send_reply("302", "Redirect");
break;
default:
jansson_get("reason","$var(result)","$var(reason)");
jansson_get("sbReason","$var(result)","$var(sbreason)");
append_to_reply("X-SBReason: $var(sbreason)\r\n");
sl_send_reply("$var(rc)", "$var(reason)");
}
exit;
}
xlog("L_ERR","missing xci or org or sbct");
sl_send_reply("608", "SBK Rejected");
}
}
Hi,
There are two proxy servers and two registrar servers with DMQ enabled, and
we have upgraded the proxy servers to 5.7.4 and the registrar servers to
5.5.5.
Kamailio proxy version 5.7.4
Kamailio registrar version: 5.5.5
Following the upgrade of the proxy server to 5.7.4, calls are not working
and no response is received.
Once again, we have reverted the proxy server to 5.5.5, so that the proxy
server and the registrar server version are now the same.The calls are now
working as expected.
We suspect it could be an DMQ issue.
I would appreciate your suggestions on this matter of compatibility between
proxy and registry servers.
Thanks.
Hi,
I set up a transparent kamailo proxy for IPv4 and IPv6.
The PBX which should be reached can handle both.
Now I have the case that the phone comes in on IPv6, but kamailio sends
it out via IPv4.
If I ping the PBX on the kamailio server (debian) I get the IPv6
address, since it is preferred.
Why does kamailio send to the IPv4 address of the PBX?
And how can I change this?
There are only A and AAAA records in the DNS
dns_try_ipv6=yes
is set.
Debian 12.5
Kamailio 5.6.5
Any hint is welcome.
Best regards
Bernd
Hi all,
I am using Kamailio 5.7.4 on a Debian 12 machine. I used ansible to
template some files, and a newline was omitted at the end of the uacreg
table due to a templating issue.
This caused kamailio to crash on start up, with the error:
20(27) CRITICAL: <core> [core/pass_fd.c:281]: receive_fd(): EOF on 24
Even with debug enabled it still wasn't clear the issue was caused by the
uac module. I had to do a gdb backtrace to figure it out.
Whilst the mistake was on my part, I wondered if this should be handled
more cleanly?
Cheers
Matthew
I am trying to build Kamailio with repo tags/5.6.4 to get my hands on the stirshaken module that was not part of apt repositories, however it results in a build error:
root@ip-fobby:/usr/src/kamailio# make modules modules=modules/stirshaken
make -C src/ modules
make[1]: Entering directory '/usr/src/kamailio/src'
CC (gcc) [M stirshaken.so] stirshaken_mod.o
stirshaken_mod.c:28:10: fatal error: stir_shaken.h: No such file or directory
28 | #include <stir_shaken.h>
| ^~~~~~~~~~~~~~~
compilation terminated.
make[2]: *** [../../Makefile.rules:100: stirshaken_mod.o] Error 1
make[1]: *** [Makefile:511: modules] Error 1
make[1]: Leaving directory '/usr/src/kamailio/src'
make: *** [Makefile:34: modules] Error 2
Obviously there’s no stir_shaken.h file withib the directory src/modules/stirshaken, but I cannot see why, or how I proceed? Is this a likely symptom of faulty libstirshaken installation?
/M