[Devel] Dialog module updating timeout value on PRACK
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.
> ronw (karwin)
More information about the Devel