I failed to link this to the original post. So I'll begin anew. Here was my
post.
Hi Kamailio Community, When testing rtpengine_manage and websockets, I
noticed that if the rtpengine table in the database is not used, a new
websocket is created for every call for a given dialog. That is, when an
INVITE is received, an offer is sent to rtpengine. When the 200 OK or
18[3|0] is received, an answer is sent. However, the WS identifier often
changes and as a result the request is not sent over the same websocket.
This is problematic particularly when using FQDNs in the Kamailio
configuration. When a load balancer is used between Kamailio and rtpengine,
the answer may arrive at a different rtpengine in the cluster. After
tracing through the source, I could not find a configuration parameter or
set of triggers that I could manipulate to fix this. It leads me to believe
it is only possible to reuse the websocket when the rtpengine table is
used. Does anybody have more experience than I in this area that may be
able to point me in the right direction, making load balancers for
rtpengine_manage calls possible?
Alex then responded with
Hi, Without wishing to dismiss the salience of your problem: do you
actually need WS?
Henning then responded with
Hello, so, you are saying that the connection handling behaviour of
Kamailio with rtpengine changes, if you are using database mode compared to
not using the database? I’ve might missed some side-effects, but I think
that using rtpengine_manage() should not affect the handling of Websocket
connection (or in fact any other connection) operation that Kamailio is
doing on the SIP level. The rtpengine_manage() should affect the SDP
content of the SIP message body only. Can you reproduce this behaviour?
Cheers, Henning
I would like to continue this. I'll detall more in my next post.
On Wed, Jan 8, 2025 at 11:47 AM Knserbrave <knserbrave(a)gmail.com> wrote:
test