Hi,

I forgot a one comment about the commented code line:

o Bert Fraterman [09/21/09 13:52]:
      while (!sess_stopped.get() ||

          (dlg.getStatus() == AmSipDialog::/Disconnecting/)//  ||

          // (dlg.getUACTransPending())

          ){

in the beginning it was implemented this way that the dialog would stay processing events (i.e. SIP requests and replies, too) if there was still an UAC transaction pending (e.g. also wait until reply for BYE is received). For many cases it turns out that this makes many sessions hang there, especially with B2BUA scenario, and IIRC with the old SER SIP stack, there was also the possibility to not get the error response for requests that timed out. This is why that line was commented.

The correct teardown of sessions is probably something that can be improved; for example it might make sense to wait for the reply to BYE, and if the request times out, retry, and after a certain amount of retries abort the session. OTOH, experience shows that in most cases where BYE fails, the other end is simply not there any more, and in that cases it does not make sense to bother much with that session.


Stefan


--
Stefan Sayer
VoIP Services

[email protected]
www.iptego.com

IPTEGO GmbH
Wittenbergplatz 1
10789 Berlin
Germany

Amtsgericht Charlottenburg, HRB 101010
Geschaeftsfuehrer: Alexander Hoffmann
_______________________________________________
Sems mailing list
[email protected]
http://lists.iptel.org/mailman/listinfo/sems

Reply via email to