Hello,
I am using rtpengine to encrypt and decrypt DTLS and SDES audio streams for my calls. I
have a set of rtpengine instances running, configured using a database, such that it is
easy to scale up on demand. This works well for initiating a call and balancing load
across multiple instances but I want to be able to recover from rtpengine failure.
I have looked at configuring rtpengine with a redis service but do not believe that to be
helpful in this case as im using encrypted media and because the configuration of
rtpengine with redis has a lot of overheads, limits scaling and requires non standard
configuration of a redis cluster.
I would like to be able to re-anchor media streams instead of relying on rtpengine to
synchronise itself across a redis cluster. For this to work, i believe i would have to use
the uac module to send a reINVITE and I speculate that i would need to use an xhttp event
to trigger this remotely when a failure is detected.
I am unclear, though, how to get to a specific call within kamailio from the xhttp route
in order to do anything to it, if i even need to, and i am nuclear how to make the
rtpengine module select a new node for sdp for the reinvite?
How can i achieve my goal?
Perhaps it would be possible to modify the rtpengine module itself to support generating a
reinvite and selecting a new node on receipt of an rpc request?
Hoping someone can help me find a way forward
With every blessing,
Daniel