[SR-Users] Adding dialogs to a profile in a failure_route

Daniel-Constantin Mierla miconda at gmail.com
Tue Apr 29 15:03:39 CEST 2014


On 28/04/14 19:49, Alex Balashov wrote:
> Hi,
>
> Am I not allowed to call dlg_manage() and add a dialog to a profile 
> inside a request_route that is called out of a failure_route?
>
> The sequence of events is like this:
>
> 1. INVITE ---------------->
> 2. <---------- 302 redirect
> 3. ACK ------------------->
> 4. INVITE (new branch) --->
>
> It's in #4 that I add the dialog to a profile and call dlg_manage(). 
> There's a slight ambiguity because I am calling in a request_route, 
> but the request_route is really called from a failure_route that 
> catches the 302. It contains common logic that is used in both #1 and 
> #4. So, the message being processed is 302, but the execution context 
> is request_route.
>
> The docs say that dlg_manage() can be used in a request_route, and 
> that set_dlg_profile() can be called from request/branch/reply/failure 
> routes. But, I suppose it's logical that dlg_manage() ought to operate 
> on the initial dialog-opening request. However, since the 302 is part 
> of the same transaction as the initial INVITE, I would think that's 
> okay. Is it?
>
> Anyway, I get these messages a lot:
>
> Apr 28 17:41:04 p01 /usr/local/sbin/kamailio[8581]: CRITICAL: dialog 
> [dlg_profile.c:444]: set_dlg_profile(): BUG - dialog not found in a 
> non REQUEST route (1)
> Apr 28 17:41:04 p02 /usr/local/sbin/kamailio[8581]: ERROR: dialog 
> [dialog.c:800]: w_set_dlg_profile(): failed to set profile
>
> At no point am I actually calling set_dlg_profile() outside of a 
> request_route, but the request_route might be called from a 
> failure_route.
>
> So, the question is, am I doing something wrong? What's the best way 
> to accommodate this scenario? I don't know if I want to track the 
> dialog or add it to a profile until after I get the 302.
I guess dialog has to be created in main request_route (or sub-route 
block executed from there) as it relies on some tm callbacks that could 
be related to transaction creation and first time forwarding.

Cheers,
Daniel

-- 
Daniel-Constantin Mierla - http://www.asipto.com
http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda




More information about the sr-users mailing list