Hi!
Wanted to clarify some info about rtpengine working within HA-environment.
Idea is we have multiple rtpengines under same setid. So, when I'm calling rtpengine_offer() I really don't care which is selected. But than might happen situation, where this call(dialog) is moved to other Kamailio instance (via dlg_db_load_callid()) and from there called rtpengine_delete().
So, my question is, how I can be sure, that delete request will go to same rtpengine instance that was selected in rtpengine_offer() on different server. And where this info is stored, within dialog or within TM module (which is not replicated in any way)
Regards, Igor
You can’t be sure, if the command is issued from a different Kamailio instance. I’d suggest sticking the RTPEngine set ID into an RR parameter, simply because it’s both stateless and dialog-persistent.
— Sent from mobile, with due apologies for brevity and errors.
On May 31, 2019, at 10:01 AM, Igor Olhovskiy igorolhovskiy@gmail.com wrote:
Hi!
Wanted to clarify some info about rtpengine working within HA-environment.
Idea is we have multiple rtpengines under same setid. So, when I'm calling rtpengine_offer() I really don't care which is selected. But than might happen situation, where this call(dialog) is moved to other Kamailio instance (via dlg_db_load_callid()) and from there called rtpengine_delete().
So, my question is, how I can be sure, that delete request will go to same rtpengine instance that was selected in rtpengine_offer() on different server. And where this info is stored, within dialog or within TM module (which is not replicated in any way)
Regards, Igor _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Thanks, that's one of ideas where to store info.
Regards, Igor On May 31, 2019, 17:04 +0300, Alex Balashov abalashov@evaristesys.com, wrote:
You can’t be sure, if the command is issued from a different Kamailio instance. I’d suggest sticking the RTPEngine set ID into an RR parameter, simply because it’s both stateless and dialog-persistent.
— Sent from mobile, with due apologies for brevity and errors.
On May 31, 2019, at 10:01 AM, Igor Olhovskiy igorolhovskiy@gmail.com wrote:
Hi!
Wanted to clarify some info about rtpengine working within HA-environment.
Idea is we have multiple rtpengines under same setid. So, when I'm calling rtpengine_offer() I really don't care which is selected. But than might happen situation, where this call(dialog) is moved to other Kamailio instance (via dlg_db_load_callid()) and from there called rtpengine_delete().
So, my question is, how I can be sure, that delete request will go to same rtpengine instance that was selected in rtpengine_offer() on different server. And where this info is stored, within dialog or within TM module (which is not replicated in any way)
Regards, Igor _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Ok. There are a possibility to get instance was chosen by rtpengine_offer via rtp_inst_pvar. But is there way to force answer/delete to this instance or need to get some uri_to_setid function?
Regards, Igor On May 31, 2019, 17:04 +0300, Alex Balashov abalashov@evaristesys.com, wrote:
You can’t be sure, if the command is issued from a different Kamailio instance. I’d suggest sticking the RTPEngine set ID into an RR parameter, simply because it’s both stateless and dialog-persistent.
— Sent from mobile, with due apologies for brevity and errors.
On May 31, 2019, at 10:01 AM, Igor Olhovskiy igorolhovskiy@gmail.com wrote:
Hi!
Wanted to clarify some info about rtpengine working within HA-environment.
Idea is we have multiple rtpengines under same setid. So, when I'm calling rtpengine_offer() I really don't care which is selected. But than might happen situation, where this call(dialog) is moved to other Kamailio instance (via dlg_db_load_callid()) and from there called rtpengine_delete().
So, my question is, how I can be sure, that delete request will go to same rtpengine instance that was selected in rtpengine_offer() on different server. And where this info is stored, within dialog or within TM module (which is not replicated in any way)
Regards, Igor _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Hi,
Kamailio's rtpengine module has an internal hash table with call-id as a key and when you call rtpengine_manage()/_offer()/_answer()/_delete() kamailio finds corresponding rtpengine instance to send command to. So it's inside rtpengine module and not in tm or dialog and thus unlikely to be replicated. At least I haven't seen any replication code when checked it last time.
On 31.05.19 17:01, Igor Olhovskiy wrote:
Hi!
Wanted to clarify some info about rtpengine working within HA-environment.
Idea is we have multiple rtpengines under same setid. So, when I'm calling rtpengine_offer() I really don't care which is selected. But than might happen situation, where this call(dialog) is moved to other Kamailio instance (via dlg_db_load_callid()) and from there called rtpengine_delete().
So, my question is, how I can be sure, that delete request will go to same rtpengine instance that was selected in rtpengine_offer() on different server. And where this info is stored, within dialog or within TM module (which is not replicated in any way)
Regards, Igor
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users