Stasis: Allow internal channels directly into bridges

The patch to catch channels being shoehorned into Stasis() via external
mechanisms also happens to catch Announcer and Recorder channels
because they aren't known to be stasis-controlled channels in the usual
sense. This marks those channels as Stasis()-internal channels and
allows them directly into bridges.

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

Merged revisions 420795 from http://svn.asterisk.org/svn/asterisk/branches/12
........

Merged revisions 420796 from http://svn.asterisk.org/svn/asterisk/branches/13


git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@420797 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
Kinsey Moore
2014-08-11 18:38:15 +00:00
parent db0a97f8ce
commit 6f735288b0
4 changed files with 110 additions and 2 deletions

View File

@@ -821,6 +821,36 @@ void stasis_app_channel_set_stasis_end_published(struct ast_channel *chan);
*/
int stasis_app_channel_is_stasis_end_published(struct ast_channel *chan);
/*!
* \brief Is this channel internal to Stasis?
*
* \param chan The channel to check.
*
* \retval 0 No
* \retval 1 Yes
*/
int stasis_app_channel_is_internal(struct ast_channel *chan);
/*!
* \brief Mark this unreal channel and it's other half as being internal to Stasis.
*
* \param chan The channel to mark.
*
* \retval zero Success
* \retval non-zero Failure
*/
int stasis_app_channel_unreal_set_internal(struct ast_channel *chan);
/*!
* \brief Mark this channel as being internal to Stasis.
*
* \param chan The channel to mark.
*
* \retval zero Success
* \retval non-zero Failure
*/
int stasis_app_channel_set_internal(struct ast_channel *chan);
/*! @} */
#endif /* _ASTERISK_STASIS_APP_H */