On 03/16/2010 01:36 PM, Iñaki Baz Castillo wrote:
2010/3/16 Daniel-Constantin
Mierla<miconda(a)gmail.com>om>:
I agree that state 3 should stay no longer than
32sec, normally this should
be clear by caller sending BYE due to non-ACK. You said you are not doing
record routing, how the bye gets then to the proxy so the dialog is cleared
from memory?
Humm no, I didn't mean it, I'm using record route (I just said that
without record route dialog module makes no sense).
sorry, I misunderstood.
The issues are two:
1) INVITE, 200 but no ACK received.
The dialog remains in state 3 for dialog module default_timeout value
(long time usually). IMHO as no ACK is received the dialog should be
deleted after 32 seconds (the time the TM module waits for the ACK).
But isn't there a BYE coming from callee after 32sec? Callee should end
the dialog in its side if no ACK is received.
2) When the INVITE transaction is terminated by a
final [3456]XX
response, the dialog remains in memory in state 5
for ~4 seconds. I've inspected the code and couldn't find a timer or
whatever that could make the dialog information to be kept for such
time.
Not in dialog module, but it is tm module. IIRC, the last reference to
such dialog is destroyed when the transaction is deleted from memory.
That should happen aprox 2sec after the transaction is completed and
reply sent. To be sure it is this one, you can play with tm parameter
delete_timer or so. I am going to dig in more as well.
Cheers,
Daniel
--
Daniel-Constantin Mierla
Kamailio SIP Router Masterclass, Berlin, March 22-26, 2010
*
http://www.asipto.com/index.php/sip-router-masterclass/