Hello,
the dialog module for upcoming release kamailio/openser 1.5.0 (http://www.kamailio.org/dokuwiki/doku.php/features:new-in-1.5.x) has the ability to execute a script route when a dialog timeouts.
Just set the $dlg_ctx(timeout_route) before creating the dialog.
route { ... $dlg_ctx(timeout_route) = 11; dlg_manage(); ... }
route[11] { ... }
Before the execution of timeout route the $dlg(...) psudo-variable is set to the expired dialog. One particular use case is to write full cdr, via sqlops and using $dlg(...) pseudo-variable. All functions that can be executed in a request route are safe here - there is a faked SIP message given as parameter.
There are couple of other new properties that can be set before dialog creation: - send BYE at timeout - to make that happen you have to set: $dlg_ctx(timeout_bye) = 1; - set an integer that can be used as a bitmask flag checking later: $dlg_ctx(flags) = ...;
Cheers, Daniel