I've setup several OpenSIPS proxies (keeping track of dialogs,acc,etc.) behind a OpenSIPS B2BUA (to implement topology hiding - nothing else). I'm currently using version 1.6.3 on both the proxy & b2bua. I updated the b2bua modules from svn yesterday.
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. 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: proxy b2bua carrier ----- INV -----> <---- 100 ------ ------ INV ----> <----- 100 ----- <----- 183 ----- <---- 183 ------ --- CANCEL ----> <- 200(cancel)-- --- CANCEL ----> <- 200(cancel)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <- 200(invite)-- <----- BYE ----- <- 200(invite)-- <----- BYE ----- <- 200(invite)-- 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.
_______________________________________________ Users mailing list Users@lists.opensips.org http://lists.opensips.org/cgi-bin/mailman/listinfo/users