[OpenSIPS-Users] dialog behavior when no ACK is received
John Burke
john at voxtelesys.com
Mon Oct 31 01:24:10 UTC 2022
Hello,
One way to handle the ACK timeout scenario that you described is to
initially set the dialog timeout to a low value, then increment to the
desired value after receiving the ACK. Here's a minimal example with
some notes I have. In this config, your call would hang for 5sec before
being auto-closed by the dialog module.
route {
if (has_totag()) {
# sequential request logic
...
if (is_method("ACK"))
$DLG_timeout = 43200; # 12hrs
...
}
# to handle case of lost ACK, we set low dialog timeout then
# increase once ACK is received; without this the call will stay
# in DLG_STATE=3 until default dialog timeout is met
# NOTE: timer doesn't start until 200 received, so this is essentially
# an ACK timeout (ie 200 -> ACK)
$DLG_timeout = 5;
...
# initial request logic
}
If the code ever changes to start the DLG timer before the 200, then
this doesn't work... but I think this is baked into RFC and in any rate
my unit tests for this scenario have never failed when migrating versions :)
Thanks,
John Burke
On 10/30/22 9:44 AM, M S wrote:
> Hi list,
> When a dialog is created with initial INVITE, it seems like it is not
> available to dlg_end_dlg until the call is answered (OK received) and
> the caller also acknowledges (ACK) to the OK message.
> So in a scenario where a caller sends an INVITE and then dies, the
> call goes to callee, gets answered, OK is sent to caller but there is
> no response, and the dialog stays open until default_timeout and
> that's when the CDR is generated (if default_timeout is 12 hours then
> a 12 hour call is in CDR).
> Anybody has any ideas how we can fix this? If I use PpB for dialog, it
> never PINGs the callee because apparently the dialog is not fully
> established on the callee side. If I use rtpengine to detect media
> timeout, it correctly detects it but when it calls dlg_end_dlg
> opensips says "dialog not found".
>
> Thank you!
>
> --
> *Please be cautious!* This email was sent from outside of Voxtelesys.
>
>
> _______________________________________________
> Users mailing list
> Users at lists.opensips.org
> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20221030/79d82a4c/attachment.html>
More information about the Users
mailing list