<div class="gmail_quote"><div>I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else).</div><div>I'm currently using version 1.6.3 on both the proxy & b2bua. I updated the b2bua modules from svn yesterday.</div>
<div><br>Certain dialogs "hang" because of how the B2BUA handles an inappropriate response to an INVITE in a never-established (canceled) dialog coupled with the proxy establishing a dialog after a CANCEL has been processed. </div>
<div><br></div><div>After the initial call attempt is canceled, the upstream carrier responds with a 200 OK to the INVITE. The B2BUA sends that back to the OpenSIPS proxy. The OpenSIPS proxy creates a dialog even though the INVITE has been canceled. Soon afterwards, a BYE is received from upstream but the B2BUA does not send that back to the proxy. As a result, the dialog hangs (until the timeout is reached). I've tried to show the call flow below:</div>
<div><br></div><div><font face="'courier new', monospace">proxy b2bua carrier</font></div><div><font face="'courier new', monospace"><br>
</font></div><div><font face="'courier new', monospace">----- INV -----></font></div><div><font face="'courier new', monospace"><---- 100 ------</font></div>
<div><font face="'courier new', monospace"> ------ INV ----></font></div><div><font face="'courier new', monospace"> <----- 100 -----</font></div>
<div><font face="'courier new', monospace"> <----- 183 -----</font></div><div><font face="'courier new', monospace"><---- 183 ------</font></div>
<div><font face="'courier new', monospace">--- CANCEL ----></font></div><div><font face="'courier new', monospace"><- 200(cancel)--</font></div><div>
<font face="'courier new', monospace"> --- CANCEL ----></font></div><div><font face="'courier new', monospace"> <- 200(cancel)--</font></div>
<div><font face="'courier new', monospace"> <- 200(invite)--</font></div><div><font face="'courier new', monospace"><- 200(invite)--</font></div>
<div><font face="'courier new', monospace"><span style="font-family:arial"><div><font face="'courier new', monospace"> <- 200(invite)--</font></div>
<div><font face="'courier new', monospace"><- 200(invite)--</font></div><div><font face="'courier new', monospace"><span style="font-family:arial"><div>
<font face="'courier new', monospace"> <- 200(invite)--</font></div><div><font face="'courier new', monospace"><- 200(invite)--</font></div>
<div><font face="'courier new', monospace"><span style="font-family:arial"><div><font face="'courier new', monospace"> <- 200(invite)--</font></div>
<div><font face="'courier new', monospace"><- 200(invite)--</font></div></span></font></div></span></font></div></span></font></div><div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div>
<div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div><div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div>
<div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div><div><span style="font-family:'courier new', monospace"> <----- BYE -----</span></div>
<div><span style="font-family:'courier new', monospace"><span style="font-family:arial"><div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div>
<div><span style="font-family:'courier new', monospace"><span style="font-family:arial"><div><span style="font-family:'courier new', monospace"> <----- BYE -----</span></div>
<div><span style="font-family:'courier new', monospace"><span style="font-family:arial"><div><span style="font-family:'courier new', monospace"><- 200(invite)--</span></div>
</span></span></div></span></span></div><div><span style="font-family:'courier new', monospace"><br></span></div><div>I'm hoping I'm doing something stupid in my implementation that could cause this behavior. Thanks for any help that might resolve this issue.</div>
</span></span></div>
<div><br></div>
</div><br>