ARI: Bridge Playback, Bridge Record

Adds a new channel driver for creating channels for specific purposes
in bridges, primarily to act as either recorders or announcers. Adds
ARI commands for playing announcements to ever participant in a bridge
as well as for recording a bridge. This patch also includes some
documentation/reponse fixes to related ARI models such as playback
controls.

(closes issue ASTERISK-21592)
Reported by: Matt Jordan

(closes issue ASTERISK-21593)
Reported by: Matt Jordan

Review: https://reviewboard.asterisk.org/r/2670/


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@394809 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Jonathan Rose
2013-07-19 19:35:21 +00:00
parent 5a8f32703c
commit 17c546173f
21 changed files with 961 additions and 31 deletions

View File

@@ -126,6 +126,29 @@ struct stasis_app_control *stasis_app_control_find_by_channel(
struct stasis_app_control *stasis_app_control_find_by_channel_id(
const char *channel_id);
/*!
* \brief Creates a control handler for a channel that isn't in a stasis app.
* \since 12.0.0
*
* \param chan Channel to create controller handle for
*
* \return NULL on failure to create the handle
* \return Pointer to \c res_stasis handler.
*/
struct stasis_app_control *stasis_app_control_create(
struct ast_channel *chan);
/*!
* \brief Act on a stasis app control queue until it is empty
* \since 12.0.0
*
* \param chan Channel to handle
* \param control Control object to execute
*/
void stasis_app_control_execute_until_exhausted(
struct ast_channel *chan,
struct stasis_app_control *control);
/*!
* \brief Returns the uniqueid of the channel associated with this control
*