[asterisk-dev] [Code Review] 2361: Stasis application WebSocket support
David Lee
reviewboard at asterisk.org
Fri Apr 5 11:32:24 CDT 2013
-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://reviewboard.asterisk.org/r/2361/
-----------------------------------------------------------
(Updated April 5, 2013, 11:32 a.m.)
Review request for Asterisk Developers.
Changes
-------
Addressed review feedback.
* Fixed some comments
* Made the stasis_app data pointer AO2 managed.
* This rippled out into several changes, but I'd say that the end
result is much better.
Repository: Asterisk
Description
-------
This patch is based on the stasis-core message bus, in
https://reviewboard.asterisk.org/r/2339/
This is the API that binds the Stasis dialplan application to external
Stasis applications. It also adds the beginnings of WebSocket
application support.
This module registers a dialplan function named Stasis, which is used
to put a channel into the named Stasis app. As a channel enters and
leaves the Stasis diaplan applcation, the Stasis app receives a
'stasis-start' and 'stasis-end' events.
Stasis apps register themselves using the stasis_app_register and
stasis_app_unregister functions. Messages are sent to an appliction
using stasis_app_send.
Finally, Stasis apps control channels through the use of the
stasis_app_control object, and the family of stasis_app_control_*
functions.
The biggest unknown I have about this patch is how I'm exporting
symbols from app_stasis.so. I believe I'm doing it correctly, and they
should not need to use optional API. If anyone knows if it will be a
problem on BSD, Solaris, etc., please let me know.
Other changes along for the ride are:
* An ast_frame_dtor function that's RAII_VAR safe
* Some common JSON encoders for name/number, timeval, and
context/extension/priority
Diffs (updated)
-----
/trunk/apps/Makefile 384490
/trunk/apps/app_stasis.c PRE-CREATION
/trunk/apps/app_stasis.exports.in PRE-CREATION
/trunk/apps/stasis_json.c PRE-CREATION
/trunk/include/asterisk/app_stasis.h PRE-CREATION
/trunk/include/asterisk/frame.h 384490
/trunk/include/asterisk/json.h 384490
/trunk/include/asterisk/localtime.h 384490
/trunk/main/frame.c 384490
/trunk/main/json.c 384490
/trunk/res/res_stasis_websocket.c PRE-CREATION
/trunk/tests/test_abstract_jb.c 384490
/trunk/tests/test_app_stasis.c PRE-CREATION
/trunk/tests/test_json.c 384490
Diff: https://reviewboard.asterisk.org/r/2361/diff/
Testing
-------
Unit tests; ran a few channels through the applications
Thanks,
David Lee
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.digium.com/pipermail/asterisk-dev/attachments/20130405/8ce26471/attachment.htm>
More information about the asterisk-dev
mailing list