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