[sr-dev] improving the dialog module

Timo Reimann timo.reimann at 1und1.de
Thu Mar 18 13:46:33 CET 2010


Iñaki Baz Castillo wrote:
>> Interesting would be how the in-dialog requests are mapped to the
>> dialog - here a RR-cookie would be needed to find the proper dialog
>> structure.
> 
> Yes, that's the point, the in-dialog requests. The only way is by 
> inspecting the route-set of the request but this involver ugly SIP
> URI comparisons. But this can be really simpliffied using RR-cookies
> as RR module already uses, right? If not, the dialog hash_id could be
> added to the Record-Route during loose_route().

The dialog module currently supports three modes of matching dialogs
(actually, it's just two because the third mode is a combination of both
were one is used as fallback). See here for a short description:

http://kamailio.org/docs/modules/1.5.x/dialog.html#id2491878

(The modes haven't changed for 3.x.)

Matching on SIP elements only employs the Call-ID, From-tag, and To-tag
currently. Record set is stored but its usage apparently limited to
displaying purposes (i.e., MI interface): dlg_hash.h's match_dialog()
function doesn't show any sign of record set parsing.

For DID-(cookie-)based matching, a reference to the hashed dialog
data-structure is attached to the record set by the time the dialog is
created, and later fetched when on-route processing in dlg_onroute()
(called from loose_route()) is performed.


Cheers,

--Timo



More information about the sr-dev mailing list