Hello,
I am trying to properly size the use of the Dialog Module hash table for
Kamailio 4.1.3 implementation using:
modparam("dialog", "hash_size", <number that is power of two>)
However, in my testing, I have been unable to figure out the relationship
between the hash size and a number of dialogs I need to support. I think
the hash size is specifying a memory block in kB, but even setting the hash
size to a very tiny number does stop me from creating hundreds of dialogs.
Is there a way to determine a relationship between the hash size and a
rough number of dialogs that would be expected?
Thanks,
--
Mark Blackford
Digium Cloud Services
678.230.8769
Hi,
I am using *Kamailio 4.4* as the proxy with my *Asteri**sk *server. I am
trying to develop a scenario where an extension gets registered on asterisk
via *Kamailio *when it receives a push notification. This push notification
is sent to the sip extension when a call towards this extension reaches to
the *Kamailio*.
For example, suppose there is two SIP extension(* extension 1 and extension
2*) registered on *Asterisk *via Kamailio. When a call from *extension 1*
reaches the asterisk, it forwards the *INVITE *request towards *extension 2*
via Kamailio.Kamailio will try to forward it to extension 2. suppose
the *extension
2* is not able to receive the *INVITE *request from *Kamailio*. When
extension two receive a push notification, it will register on asterisk.
So I need to get the call on *extension 2 *through the new registration.
We are trying to simulate registration of extension to the asterisk when
receiving the push notification.
First, we registered *extension 2 *and disconnected the network. Then we
tried to register the same extension when a call from *extension 1 *reaches
to Kamailio. This is a simulation of push-based registration since an
extension that receives the push will attempt to register when an incoming
call is received.
When asterisk sends *INVITE *request to Kamailio, it immediately responded
with *100 trying* provisional response. This *100* response by Kamailio
towards asterisk prevents asterisk from re-transmitting the INVITE.
Then Kamailio tried to send and retransmit the packet to *extension 2*,
which does not have network access. This* extension 2 *was on port number
*24071*. Even after successful registration(in port *59995*) of the *extension
2*, Kamailio continued to transmit the packets to the old port.
After that, we have configured Kamailio in a way that it won't send an
immeadeate provisional reply(*100 trying* ) for *INVITE *request.
Here Kamailio is not immediately sending *100 trying* message to *Asterisk*.
This forces Asterisk to re-transmit. Asterisk was found to retransmit the
same packets. However, even after the successful registration of* extension
2*, asterisk continued to send the old invite to Kamailio not the new one
to the latest port.
This is the problem for me since push relies on the *INVITE *reaching the
phone at the correct port number.
So, is there other good approaches to solve this issue?
One thing I would like to try is modifying the pending *INVITE *request
towards old registered port with the new port details when new registration
reaches to Kamailio. Can I get the ongoing requests from Kamailio?
Please suggest a viable solution.
Thank you,
Arunbalan
Hello all,
I've been trying to use dispatcher's algorithm "12" to fork REGISTER
messages constructed with uac module to all destinations within a set.
However, the request is routed to only one destination. Is anything else
needed in addition to calling ds_select_dst("0", "12") in the configuration
script? Thanks.
BR,
George
Hi. i would like to ask if someone has found any bash script that could
install all at once for Kamailio and Siremis in ubuntu/debian or even in
centos.
Hello
if i need to use kamailio as an application server like mmtel for example how could i do that and what is the features that kamailio have if i want to use it as application server
in another word what is the type of application server it could be act like (mmtel - presence) ?
and thanks for help
Hello again,
I am not a SIP expert, and I’m new to Kamailio, really enjoying learning it, but I’ve hit a blocker and I’m pretty sure I’ve missed something really simple.
I’m looking to implement the Redirect Server from here: https://tools.ietf.org/html/rfc3665#section-3.6 <https://tools.ietf.org/html/rfc3665#section-3.6> (the Avaya Session Manager being Alice), Kamailio as the Redirect Server. My configuration is working fine, and I can see the 302 going back (to Avaya SM), I then get the ACK I’m expecting.
The incoming SIP request contains a number of fields, including a Contact header, which I’m told SM needs on the return. But the send_reply() or sl_send_reply() doesn’t return the Contact header, and I am unable to manually set it, or any other header, using any of the append_hf(), append_to_reply() etc. mechanisms. I’m executing a msg_apply_changes() which succeeds, but no Contact header is returned.
I’ve tried an sl_send_reply(“100”, “Trying”) before any other processing, and Wireshark confirms that the SIP response is basically identical to the 302 response sent after processing… The goal is to run this stateless, I’m assuming this is possible - it certainly feels like it should be.
I’ve re-read the intros & tutorials, and other reading material such as this http://kamailio.org/docs/ser-getting-started/SER-GettingStarted.pdf <http://kamailio.org/docs/ser-getting-started/SER-GettingStarted.pdf> but, this, even my best Google-fu has left me utterly stumped…
The sl_send_reply documentation https://kamailio.org/docs/modules/5.2.x/modules/sl.html#sl_send_reply <https://kamailio.org/docs/modules/5.2.x/modules/sl.html#sl_send_reply> states “If the code is in the range 300-399 (redirect reply), the current destination set is appended to the reply as Contact headers” but the Contact header is definitely not being set when I use this.
Apologies in advance if eyes are rolling and this is really obvious, or (and?) that my lack of SIP knowledge is shining through - any tips or guidance would be appreciated. I certainly feel overwhelmed by the number of modules and the interplay between them.
If the answers to this, and other things along these lines are contained in the admin book, that’s fab, I’ve just filled the form out :)
Cheers - Robert...
Hello,
I’m working for a UK high street bank and our Kamailio implementation has been challenged because we’ve got database passwords held in clear in the configuration file.
I am unable to find any examples of where this has been worked around, there doesn’t seem to be any module or configuration means of supplying a variable in the modparam() entry that is expanded a startup. The security tutorials only seem to relate to the SIP level of security, not Kamailio as a platform.
My requirement is simple, I need to be able to supply a password via means such as loading a variable from a run-once script at start up, or a module. The ideal would be to be able to read in a Docker secret :)
I am by no means a Kamailio expert, so apologies in advance if this is a mindblowingly basic thing to achieve, but I do feel I’ve exhausted the Kamailio documentation, wiki etc. and all the goodness Google usually has to offer and drawn a blank.
Sincere thanks in advance for any assistance.
Cheers - Robert...
Not sure if anyone is using "latency measurement" feature in Kamailio
dispatcher module, I thought I could share a very simple Python script that
I am using to monitor remote gateway using this.
Sample Script is attached, it will post data to statsd and is working in
cron
The feature can be enabled :
3.27. ds_ping_latency_stats (int)
Enable latency measurement when pinging nodes
If set to 0, disable latency measurement.
If set to 1, enable latency measurement
https://www.kamailio.org/docs/modules/devel/modules/dispatcher.html#dispatc…
This is one use case of this feature, another one will be to load balance
based on congestion detected on latency, I am planning to share a lab
experiment in a little while.
Regards