And specifically, the ambiguity I am referring to in your narrative is
the following:
1) In your first reply to me after I posted the configs, you said:
"Your config is bogus. You are not doing proper record-routing (you
commented out that section). In-dialog requests are matched during
record-route handling, regardless of the dialog match mode."
2) In your subsequent reply to yourself and clarification of the issue
with reference to the dialog docs, you say:
"The documentation is a little bit fuzzy about this, but here's the hint:
http://kamailio.org/docs/modules/1.4.x/dialog#id2507978
http://kamailio.org/docs/modules/1.4.x/dialog#id2508031
<quote>
This PV will be available only for sequential requests, after doing
loose_route().
</quote>
So it means that you must perform loose_route() if you want to catch
in-dialog request and have a consistent dialog state. With your
config, all the dialogs will just time out ..."
3) So, which one is it? If I need to record_route(), that is obvious;
you cannot monitor dialogs if subsequent in-dialog requests do not pass
through the proxy. I am doing that.
If it is loose_route() that I need to correlate subsequent in-dialog
requests, why? As you said, if no RR cookies are being used, why should
the proxy care about the Route: header?
Thanks,
-- Alex
Ovidiu Sas wrote:
The cookie attribute is not used at all in mode 2.
Inspect your
traffic and you will see that there are no rr coockes and the dialog
matching is working ok (in mode 2).
The record-route mechanism is used as a _hook_ by the dialog module to
intercept in dialog requests. I don't know how to put this better in
words ...
Hope that this clarifies your dialog matching issue.
So ... the dlg_match_mode works as advertised in the doc as long as
you have a proper implementation of the record rote mechanism.
For mode 0 and 1 you will have cookies in the Record-Route headers.
For mode 2 you will have no cookies in the Record-Route headers and
the matching will still work.
Regards,
Ovidiu Sas
On Thu, Oct 16, 2008 at 1:58 PM, Alex Balashov
<abalashov(a)evaristesys.com> wrote:
> Yep. That was the conclusion I came to as well; even though
> dlg_match_mode insinuates that the cookie attribute is optional,
> implying there are other ways to match subsequent requests as well,
> it is actually not.
>
> On Thu, October 16, 2008 1:45 pm, Ovidiu Sas wrote:
>>> That was the topic of my original post: how to correlate dialogs purely
>>> based on SIP attributes without the use of loose-routing.
>> short answer: you can't (and the matching method doesn't matter).
>> proper loose-routing is a must.
>>
>
> --
> Alex Balashov
> Evariste Systems
> Web :
http://www.evaristesys.com/
> Tel : (+1) (678) 954-0670
> Direct : (+1) (678) 954-0671
> Mobile : (+1) (706) 338-8599
>
>
--
Alex Balashov
Evariste Systems
Web :
http://www.evaristesys.com/
Tel : (+1) (678) 954-0670
Direct : (+1) (678) 954-0671
Mobile : (+1) (706) 338-8599