[sr-dev] Proposal: New Dialog Module Design

Iñaki Baz Castillo ibc at aliax.net
Fri Mar 19 15:40:35 CET 2010


2010/3/19 marius zbihlei <marius.zbihlei at 1and1.ro>:
> Hello Iñaki,
>
> I have a small question regarding a spiral case.
>
> If I got everything correct the proxy will create 2 dialog_in entries one
> for the original INVITE and one for the spiraled one (*NOTE*: Even if a
> spiral remains being the same dialog, from the point of view of the Dialog
> module a new dialog is generated when same INVITE arrives again to the proxy
> after doing a spiral. ).  When a >100 answer is received from the caller, 2
> dialog_out entries will be created (one for each dialog_in value). These two
>  out dialogs will have the same to_tag but refer to different dialog_in ids
> (the one of the INVITE and the one of the spiraled INVITE).
>
> If a final answer is received (a 200 OK) how will the dialog module know to
> match the reply to the correct dialog_out, having in mind that the match is
> done via to_tag?

Tha match is not done against the To-tag. Instead the TM module
matches the 200 to the last INVITE transaction (generatd after the
spiral). Also, such transaction match would invoke a dialog module
callback which already know the related dialog entry.

Please take a look to a new example I've writen for the case of a spiral:

http://www.kamailio.org/dokuwiki/doku.php/dialog-stateful:new-dialog-module-design#spiral



Thanks a lot.


-- 
Iñaki Baz Castillo
<ibc at aliax.net>



More information about the sr-dev mailing list