[asterisk-dev] [Code Review] 3899: ARI: Improve reporting of dial events on call forwards; Allow for channel variables to be retrieved from channels not in Stasis()

Mark Michelson reviewboard at asterisk.org
Mon Aug 11 13:32:44 CDT 2014

This is an automatically generated e-mail. To reply, visit:

(Updated Aug. 11, 2014, 1:32 p.m.)


This change has been marked as submitted.

Review request for Asterisk Developers.


Committed in revision 420794

Bugs: ASTERISK-24134 and ASTERISK-24138

Repository: Asterisk


This patch addresses a few issues:

1) The order of Dial events have been changed when performing a call forward. The order has now been altered to
    1) Dial begins dialing channel A.
    2) When A forwards the call to B, we issue the dial end event to channel A, indicating the dial is being canceled due to a forward to B.
    3) When the call to channel B occurs, we then issue a new dial begin to channel B.

2) Call forwards are now reported on the calling channel, not the peer channel.

3) AMI DialEnd events have been altered to display the extension the call is being forwarded to when relevant.

4) You can now get the values of channel variables for channels that are not currently in the Stasis application. This brings the retrieval of channel variables more in line with the rest of channel read operations since they may be performed on channels not in Stasis.

Note that this patch was mostly written by Matt Jordan. I made a few alterations to it before posting it here.


  /branches/12/res/stasis/control.c 420558 
  /branches/12/res/stasis/app.c 420558 
  /branches/12/res/ari/resource_channels.c 420558 
  /branches/12/main/stasis_channels.c 420558 
  /branches/12/main/manager_channels.c 420558 
  /branches/12/include/asterisk/stasis_app.h 420558 
  /branches/12/apps/app_dial.c 420558 

Diff: https://reviewboard.asterisk.org/r/3899/diff/


Matt also wrote a nifty python script that could be used to test that ARI events were received as they were expected during a call forward. Part of the script also grabbed a channel variable from a cahnnel not in Stasis as well.

Finally, I connected an AMI session when running the test and ensured that the Forward: header was present in the DialEnd when the call got forwarded.


Mark Michelson

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20140811/7146de20/attachment-0001.html>

More information about the asterisk-dev mailing list