Hello,
I’m trying to initiate a redis connection in ndb_redis for topos_redis on a keepalived slave host, but host tries to use the VIP instead of the second socket I defined.
Is there a way to influence the ‘database source socket’ so the server can connect with a secondary address even if it does not own the keepalived VIP (tried mhomed options without improvment) ?
Regards,
David
hello! new to working with sip/kamailio. I am currently trying to get a list of all of the header names on the invite the SBC receives. I am having trouble finding a way to do this. Does anyone know of a good solution?
hello dears ,i am using presence module and NOTIFY message are working
properly. but when i put the database on another server , NOTIFY message
will not be sent to subscribers. what is problem?
hello! new to working with sip/kamailio. I am currently trying to get a
list of all of the header names on the invite the SBC receives. I am having
trouble finding a way to do this. Does anyone know of a good solution?
--
Evan
Hello guys,
So I'm testing secsipid with made up certificates, basically:
[image: Untitled.png]
The verification _always_ comes back OK, event if I create the Identity
with different From numbers, should that fail?
Thanks all,
David Villasmil
email: david.villasmil.work(a)gmail.com
phone: +34669448337
hi, i have a question, can i use Kamailio as a authentication service?
i´m traing to set up STIR/SHAKEN framework and im looking for a server that
work as authentication service
Hi,
I am using Kamailio v5.2 as a WebRTC proxy for SIP clients, as part of
my setup I call a REST API before calling ws_handle_handshake() in
event_route[xhttp:request] using http_client_query() to authenticate
and retrieve some user details (routing etc) for the user connected
via WebSockets.
This worked fine until increased load on the system meant API
responses were slow, this caused a knock-on effect to existing
connected users. Specifically, we saw mass WebSocket disconnects for
existing connected users - believed to be due to using too aggressive
proxy timeout settings on our reverse proxy in front of Kamailio.
My understanding is that event_route[xhttp:request] uses the shared
SIP TCP worker threads, so potentially could slow API requests over
the network block all the handlers? Could this potentially impact the
keepalive processes used by the WebSocket module to check existing
WebSocket connections? We were using ping keepalives, again with
pretty aggressive timers...
To resolve this issue, I am looking at whether I can call API requests
asynchronously so that TCP workers are not blocked, my first thought
was to use http_async_query() in event_route[xhttp:request] and call
ws_handle_handshake() in the HTTP_REPLY route when the API call had
completed, but I get "ERROR: websocket [ws_handshake.c:143]:
ws_handle_handshake(): retrieving connection". I presume then this
approach is a deadend, looking at newer kamailio versions 5.5, there
doesn't seem to be any way to do this, correct?
Instead of using http_async_query() in event_route[xhttp:request], I
presume I could set a short timeout in http_client_query(), but my
concern is new WebSocket connections could still impact and block
existing ones in this case...
My other thought was to move my API call out from the
event_route[xhttp:request] into my route handler for REGISTER
requests, thinking I could offload new register requests to async
workers and move the API call there so as to not block existing
connections. Does this seem like a reasonable approach to the problem?
Given my current script does not use any async workers, how would one
go about optimising the number of plain SIP TCP workers to async
workers, are there any guides for this?
In general, for any potentially blocking "APIs" or calls over the
network, is it best practice to offload them into async workers. For
example, we run RTPEngine on separate hosts to Kamailio so should I be
wrapping rtpengine_offer/answer calls into async workers in case of a
slow network?
Apologies for the long text, but I would really appreciate any help to
understand these problems.
Thank you
Hi all,
Today I upgraded Kamailio to 5.4.5 and a random crash was just reported in
our crash monitoring script. Below is the output of the crash:
#3 0x00007fa149ebe58d in ?? () from
/usr/lib/x86_64-linux-gnu/kamailio/modules/tls.so
#4 0x00007fa14989e277 in ERR_clear_error () from
/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
#5 0x00007fa149933d81 in X509_STORE_set_default_paths () from
/usr/lib/x86_64-linux-gnu/libcrypto.so.1.1
#6 0x00007fa10310d374 in ?? () from
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.20
#7 0x00007fa10310d9f3 in ?? () from
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.20
#8 0x00007fa1030e0427 in mysql_real_connect () from
/usr/lib/x86_64-linux-gnu/libmysqlclient.so.20
#9 0x00007fa10368428c in db_mysql_new_connection () from
/usr/lib/x86_64-linux-gnu/kamailio/modules/db_mysql.so
#10 0x00007fa1501f96dc in db_do_init2 () from
/usr/lib/x86_64-linux-gnu/kamailio/libsrdb1.so.1
#11 0x00007fa1501f83f9 in db_do_init () from
/usr/lib/x86_64-linux-gnu/kamailio/libsrdb1.so.1
#12 0x00007fa103689710 in db_mysql_init () from
/usr/lib/x86_64-linux-gnu/kamailio/modules/db_mysql.so
#13 0x00007fa15062d35f in carrierroute_db_open () from
/usr/lib/x86_64-linux-gnu/kamailio/modules/carrierroute.so
#14 0x00007fa1506719c6 in ?? () from
/usr/lib/x86_64-linux-gnu/kamailio/modules/carrierroute.so
Is this crash due to libcrypto or mysql client?
Currently I have the following mysql client installed on the kamailio
instance:
ii lib*mysql*client20:amd64 5.7.34-0ubuntu0.18.04.1
amd64 MySQL database client library
ii *mysql*-client 5.7.34-0ubuntu0.18.04.1
all MySQL database client (metapackage depending on the latest
version)
ii *mysql*-client-5.7 5.7.34-0ubuntu0.18.04.1
amd64 MySQL database client binaries
ii *mysql*-client-core-5.7 5.7.34-0ubuntu0.18.04.1
amd64 MySQL database core client binaries
ii *mysql*-common 5.8+1.0.4
all MySQL database common files, e.g. /etc/*mysql*/my.cnf
root@ashintgtpsg51:/var/lib/cores # apt-cache madison mysql-client
mysql-client | 5.7.34-0ubuntu0.18.04.1 |
http://us-east-1.ec2.archive.ubuntu.com/ubuntu bionic-updates/main amd64
Packages
mysql-client | 5.7.34-0ubuntu0.18.04.1 | http://security.ubuntu.com/ubuntu
bionic-security/main amd64 Packages
mysql-client | 5.7.21-1ubuntu1 |
http://us-east-1.ec2.archive.ubuntu.com/ubuntu bionic/main amd64 Packages
root@ashintgtpsg51:/var/lib/cores #
Any suggestions would be greatly appreciated.
Thanks in advance.
--
Andy Chen
Sr. Telephony Lead Engineer
achen@ <achen(a)thinkingphones.com>fuze.com
--
*Confidentiality Notice: The information contained in this e-mail and any
attachments may be confidential. If you are not an intended recipient, you
are hereby notified that any dissemination, distribution or copying of this
e-mail is strictly prohibited. If you have received this e-mail in error,
please notify the sender and permanently delete the e-mail and any
attachments immediately. You should not retain, copy or use this e-mail or
any attachment for any purpose, nor disclose all or any part of the
contents to any other person. Thank you.*
Hello!
I need help understanding how the *handle_ruri_alias()* function works.
*Call-flow:* Upstream operator -> Kamailio Proxy -> Edpoint.
The upstream operator in the initial SIP INVITE in the Contact field sends
us an alias parameter, in turn, our Kamailio Proxy adds its own too.
The Contact after the Proxy looks something like this:
*Contact:
<sip:10.0.0.115:5060;alias=10.0.0.115~5060~1;alias=3.3.3.3~5060~1>*
When the Endpoint sends us a SIP BYE, then the *handle_ruri_alias()*
absorbs not the last alias, but the first one, and this leads to the
incorrect formation of a $du.
The RURI after the Proxy looks something like this:
*Request-Line: BYE sip:10.0.0.115:5060;alias=3.3.3.3~5060~1 SIP/2.0*
The first thing that comes to mind is a modification of the original
Contact field with storing it's within a dialogue ...
Is it possible to elegantly solve this problem?
--
BR,
Denys Pozniak