Summary:ASTERISK-24755: Asterisk sends unexpected early BYE to transferrer during attended transfer when using a Stasis bridge
Reporter:John Bigelow (jbigelow)Labels:
Date Opened:2015-02-03 12:43:05.000-0600Date Closed:2015-03-10 11:06:13
Status:Closed/CompleteComponents:Resources/res_pjsip Resources/res_stasis
Versions:SVN 13.2.0 Frequency of
Environment:Asterisk branch 13 r431492, PJSIP, Stasis, ARIAttachments:( 0) full.txt
Description:Asterisk sends an unexpected early BYE to transferrer during an attended transfer when using a Stasis bridge. After the transferrer completes the transfer, Asterisk sends a BYE to the transferrer for the first dialogue before a 200 OK sipfrag NOTIFY is sent to the transferrer.

The expected behavior is for Asterisk to send the 200 OK sipfrag NOTIFY and to only send a BYE if it doesn't receive a BYE from the endpoint after some amount of time.

When using pjsua.py as the endpoint, {{CallCallback.on_transfer_status()}} is never called back after receiving the BYE from Asterisk.

The scenario for the attached log (from a test suite test currently in development) can be found here:
Comments:By: John Bigelow (jbigelow) 2015-03-05 23:12:26.157-0600

The patch up for review (r1) appears to resolve the issue.

Using the original test suite test where I first ran into this issue:
* Patched: 5/5 executions passed
* Unpatched: 1/5 executions passed