mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-12 15:45:18 +00:00
Extract a useful routine from the softmix bridge technology.
* Extract a useful routine from the softmix bridge technology for other technologies. Make other technologies use it if they can. * Made native and 1-1 bridges write to all parties if the bridge channel writing the frame into the bridge is NULL. Softmix will also do the same for frame types that make sense. * Tweak the bridge write routine return value meaning and adjust the bridge technologies to match. git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@392514 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
@@ -1064,6 +1064,22 @@ void ast_bridge_update_linkedids(struct ast_bridge *bridge, struct ast_bridge_ch
|
||||
*/
|
||||
void ast_bridge_update_accountcodes(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, struct ast_bridge_channel *swap);
|
||||
|
||||
/*!
|
||||
* \brief Queue the given frame to everyone else.
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param bridge What bridge to distribute frame.
|
||||
* \param bridge_channel Channel to optionally not pass frame to. (NULL to pass to everyone)
|
||||
* \param frame Frame to pass.
|
||||
*
|
||||
* \note This is intended to be called by bridge hooks and
|
||||
* bridge technologies.
|
||||
*
|
||||
* \retval 0 Frame written to at least one channel.
|
||||
* \retval -1 Frame written to no channels.
|
||||
*/
|
||||
int ast_bridge_queue_everyone_else(struct ast_bridge *bridge, struct ast_bridge_channel *bridge_channel, struct ast_frame *frame);
|
||||
|
||||
/*!
|
||||
* \brief Write a frame to the specified bridge_channel.
|
||||
* \since 12.0.0
|
||||
|
@@ -124,8 +124,10 @@ struct ast_bridge_technology {
|
||||
/*!
|
||||
* \brief Write a frame into the bridging technology instance for a bridge.
|
||||
*
|
||||
* \retval 0 on success
|
||||
* \retval -1 on failure
|
||||
* \note The bridge must be tolerant of bridge_channel being NULL.
|
||||
*
|
||||
* \retval 0 Frame accepted into the bridge.
|
||||
* \retval -1 Frame needs to be deferred.
|
||||
*
|
||||
* \note On entry, bridge is already locked.
|
||||
*/
|
||||
|
Reference in New Issue
Block a user