-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/4519/
-----------------------------------------------------------

(Updated March 31, 2015, 4:54 p.m.)


Review request for Asterisk Developers.


Changes
-------

Fixed the docstring according to Joshua Colp's suggestion.


Bugs: ASTERISK-24802
    https://issues.asterisk.org/jira/browse/ASTERISK-24802


Repository: Asterisk


Description
-------

When an error occurs while writing to a web socket, the web socket is 
disconnected and the event is logged. A side-effect of this, however, is that 
any application on the other side waiting for a response from Stasis is left 
hanging indefinitely (as there is no mechanism presently available for 
notifying interested parties about web socket error states in Stasis).

To remedy this scenario, this patch introduces a new channel variable: 
STASISSTATUS.

The possible values for STASISSTATUS are:
SUCCESS         - The channel has exited Stasis without any failures
FAILED          - Something caused Stasis to croak. Some (not all) possible 
reasons for this: 
                    - The app registry is not instantiated; 
                    - The app requested is not registered; 
                    - The app requested is not active; 
                    - Stasis couldn't send a start message

 ***Note*** This is just the patch to the Asterisk source. The testsuite review 
is coming soon to a reviewboard near you (well, this reviewboard.)

And, here it is! https://reviewboard.asterisk.org/r/4520


Diffs (updated)
-----

  ./branches/13/apps/app_stasis.c 433794 

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


Testing
-------

The testing done for this issue can be found at: 
https://reviewboard.asterisk.org/r/4520/

The test in Testsuite exercises three scenarios to elicit updates to the 
STASISSTATUS channel variable:
1) The 'Babs' scenario: tests the situation where a channel is originated under 
normal conditions and then the channel is hungup. For this case, the test 
verifies that Stasis 
   correctly assigns SUCCESS to STASISSTATUS.
2) The 'Bugs' scenario: tests the situation where a call is originated 
requesting an app that was never registered in Stasis to verify the 'FAILED' 
state is correctly applied.
3) The 'Buster' scenario: tests the situation where an app that was registered 
in Stasis when call A was originated (and while call A is still active) but is 
no longer 
   registered when call B is originated. Determines if the 'FAILED' state is 
correctly applied.


Thanks,

Ashley Sanders

-- 
_____________________________________________________________________
-- Bandwidth and Colocation Provided by http://www.api-digital.com --

asterisk-dev mailing list
To UNSUBSCRIBE or update options visit:
   http://lists.digium.com/mailman/listinfo/asterisk-dev

Reply via email to