Hi,
I discovered recently that, on Kamailio 5.5.4 at least, the dialog ’timeout_avp’ no longer appears to have effect.
Here are my (seemingly relevant) dialog parameters:
modparam("dialog", "enable_stats", 0) modparam("dialog", "hash_size", 4096) modparam("dialog", "rr_param", "dlgcor") # DLG "correlator" modparam("dialog", "dlg_flag", 2) modparam("dialog", "default_timeout", 28800) # 8 hours modparam("dialog", "dlg_match_mode", 1) modparam("dialog", "table_name", "dialog") modparam("dialog", "send_bye", 1) modparam("dialog", "wait_ack", 0) modparam(“dialog”, “timeout_avp”, “$avp(dlg_timeout)”)
The flow is roughly like this:
request_route { ...
t_check_trans();
if(is_method(“INVITE”)) { ...
dlg_manage(); $avp(dlg_timeout) = 10;
...
if(!t_relay()) sl_reply_error();
return; }
I was able to resolve the problem by switching to dlg_set_timeout() instead, but I wonder if there has been a regression. Last version I have on which this positively works is 4.4.7, though, so not sure when it might have broken.
One nuance: $avp(dlg_timeout) is not initialised prior to calling dlg_manage(), and the value is only set if certain conditions are true. Not sure if some stricter check appeared in later releases which could cause this to be a problem.
Thank you!
— Alex
I think I had to also set
modparam("dialog", "timeout_noreset", 1)
On Sun, 17 Jul 2022 at 07:51, Alex Balashov abalashov@evaristesys.com wrote:
Hi,
I discovered recently that, on Kamailio 5.5.4 at least, the dialog ’timeout_avp’ no longer appears to have effect.
Here are my (seemingly relevant) dialog parameters:
modparam("dialog", "enable_stats", 0) modparam("dialog", "hash_size", 4096) modparam("dialog", "rr_param", "dlgcor") # DLG "correlator" modparam("dialog", "dlg_flag", 2) modparam("dialog", "default_timeout", 28800) # 8 hours modparam("dialog", "dlg_match_mode", 1) modparam("dialog", "table_name", "dialog") modparam("dialog", "send_bye", 1) modparam("dialog", "wait_ack", 0) modparam(“dialog”, “timeout_avp”, “$avp(dlg_timeout)”)
The flow is roughly like this:
request_route { ...
t_check_trans();
if(is_method(“INVITE”)) { ...
dlg_manage(); $avp(dlg_timeout) = 10; ... if(!t_relay()) sl_reply_error(); return;
}
I was able to resolve the problem by switching to dlg_set_timeout() instead, but I wonder if there has been a regression. Last version I have on which this positively works is 4.4.7, though, so not sure when it might have broken.
One nuance: $avp(dlg_timeout) is not initialised prior to calling dlg_manage(), and the value is only set if certain conditions are true. Not sure if some stricter check appeared in later releases which could cause this to be a problem.
Thank you!
— Alex
-- Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
Kamailio - Users Mailing List - Non Commercial Discussions
- sr-users@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the sender! Edit mailing list options or unsubscribe:
On Jul 17, 2022, at 6:43 AM, David Villasmil david.villasmil.work@gmail.com wrote:
I think I had to also set
modparam("dialog", "timeout_noreset", 1)
I had to set this too, historically, so that calls could not be sustained indefinitely through periodic reinvites.
However, I don’t think that has any bearing on the functionality of the timeout facility.
— Alex
Hello,
I don't recall changes to timeout_avp usage, but 4.4.7 is really old.
In master (and I guess 5.5.4), the timeout is set when dialog is created. Then it can be updated on 1xx or 2xx if noreset is not set.
So, maybe in old version you used to create dialog with flag mechanism, which postponed dialog creation when the transaction for INVITE was created, or noreset was not set.
Cheers, Daniel
On 17.07.22 19:43, Alex Balashov wrote:
On Jul 17, 2022, at 6:43 AM, David Villasmil david.villasmil.work@gmail.com wrote:
I think I had to also set
modparam("dialog", "timeout_noreset", 1)
I had to set this too, historically, so that calls could not be sustained indefinitely through periodic reinvites.
However, I don’t think that has any bearing on the functionality of the timeout facility.
— Alex
-- Alex Balashov | Principal | Evariste Systems LLC
Tel: +1-706-510-6800 / +1-800-250-5920 (toll-free) Web: http://www.evaristesys.com/, http://www.csrpswitch.com/
Kamailio - Users Mailing List - Non Commercial Discussions
- sr-users@lists.kamailio.org
Important: keep the mailing list in the recipients, do not reply only to the sender! Edit mailing list options or unsubscribe: