[Devel] Dialog module updating timeout value on PRACK

Dan Pascu dan at ag-projects.com
Thu Oct 5 23:38:03 CEST 2006


On Thursday 05 October 2006 23:58, Ron Winacott wrote:
> On Thursday 05 October 2006 2:17 pm, Dan Pascu wrote:
> > On Thursday 05 October 2006 20:58, Ron Winacott wrote:
> > > Bogdan,
> > > 	With changes I am making to the SST module, I noticed that the
> > > dialog module is updating the timeout value on a PRACK in the
> > > dlg_onroute() callback. You ignore ACKs but you do not ignore
> > > PRACKs.  The fix is a
> >
> > PRACK as opposed to ACK is a method that has a reply. So if you do
> > not reset the timeout, and the transaction timeouts before the PRACK
> > answers comes back what will then happen with it?
>
> Good point, but the problem is the AVP I am using to set the dialog
> timeout value is tied to the transaction, not the dialog. So the AVP is
> not available after the INVITE/200 OK request/response when the PRACK
> is seen. 

As far as I know, PRACK is only used to confirm 1xx replies and not after 
a 200 OK. It is similar with ACK, but while ACK is used for 200 OK and 
doesn't have a reply, PRACK is used to confirm 1xx and it has a reply. Go 
figure why they're so different :)

> So the PRACK over writes the set timeout value of the dialog 
> with the default value. (killing any changes I have made at
> INVITE/200OK time via the dialog timeout AVP)
>
> So, ether I need PRACK to stop resetting the dialog timeout or I need
> the AVP to be bound to the dialog and not the transaction so the dialog
> module will "remember" my value and not use the default.
>
> As for your question about what will happen, is if the dialog times out

My question was rhetorical. I know exactly what will happen. The PRACK 
reply will get lost since it cannot match with a transaction anymore, the 
PRACK will fail and so will the call setup.
I was just pointing the issues I think this change will introduce.

> in the middle of the PRACK/200OK transaction, then the dialog has timed
> out. In my case the Session Expire time has been reached and the PROXY
> is in its right to delete the dialog and free the resources because the
> session was not renewed with a reINVITE/UPDATE.
>
> Comments?
>
> Thanks,
> 	ronw (karwin)

-- 
Dan



More information about the Devel mailing list