[OpenSIPS-Users] early dialog termination
Bogdan-Andrei Iancu
bogdan at opensips.org
Mon Oct 10 14:04:40 UTC 2022
Hi Ryzhik,
Without a t_relay() it makes not much sense to have an dialog structure
at all - the dialog module in opensips is actually design for proxied
calls, not for UAC calls.
IMO, you should keep it a transaction level, by sending replies back
only. When getting the INVITE, put its call-id into a DB table (to keep
only the "active" session) together with a lifetime / expiration time.
When getting a CANCEL, update the table (set lifetime to 0), to know it
is terminated. And use an simple external script that keeps scanning the
DB for (1) sending 487 Terminated via MI if the record has 0 lifetime or
(2) send a 408 Timeout via MI if the lifetime exceeded.
In a similar way you can handle the BYE - send back 200OK for the BYE
and set 0 in lifetime, to send a 487 canceled back
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
https://www.opensips-solutions.com
OpenSIPS Summit 27-30 Sept 2022, Athens
https://www.opensips.org/events/Summit-2022Athens/
On 10/10/22 4:33 PM, Ryzhik Ivan wrote:
> Hello!
> My opensips version is 3.1 with tm,dialog and rtpengine modules.
> On incoming INVITE i'm creating an early dialog with 183 replies and
> i'm playing audio to caller with rtpengine, no t_relay() on this step,
> OS is acting as UAS endpoint.
> If the caller cancels the invite with a CANCEL message - all works great.
> But some users terminate dialog with BYE message.
> 1) on BYE with to-tag OS can't find dialog with match_dialog(),
> because to-tag presents.
> 2) if i use load_dialog_ctx($ci) - it is possible to handle BYE.
> 3) in early dialog termination with BYE we also need to send final
> response to the INVITE transaction.
>
> Maybe I did something wrong, but I can't handle the final response to
> INVITE in this case.
>
> _______________________________________________
> 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/20221010/1632cd06/attachment.html>
More information about the Users
mailing list