mirror of
https://github.com/asterisk/asterisk.git
synced 2025-10-11 23:28:59 +00:00
A great big renaming patch
This patch renames the bridging* files to bridge*. This may seem pedantic and silly, but it fits better in line with current Asterisk naming conventions: * channel is not "channeling" * monitor is not "monitoring" etc. A bridge is an object. It is a first class citizen in Asterisk. "Bridging" is the act of using a bridge on a set of channels - and the API that fulfills that role is more than just the action. (closes issue ASTERISK-22130) git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@395378 65c4cc65-6c06-0410-ace0-fbb531ad65f3
This commit is contained in:
133
include/asterisk/bridge_basic.h
Normal file
133
include/asterisk/bridge_basic.h
Normal file
@@ -0,0 +1,133 @@
|
||||
/*
|
||||
* Asterisk -- An open source telephony toolkit.
|
||||
*
|
||||
* Copyright (C) 2013 Digium, Inc.
|
||||
*
|
||||
* Richard Mudgett <rmudgett@digium.com>
|
||||
*
|
||||
* See http://www.asterisk.org for more information about
|
||||
* the Asterisk project. Please do not directly contact
|
||||
* any of the maintainers of this project for assistance;
|
||||
* the project provides a web site, mailing lists and IRC
|
||||
* channels for your use.
|
||||
*
|
||||
* This program is free software, distributed under the terms of
|
||||
* the GNU General Public License Version 2. See the LICENSE file
|
||||
* at the top of the source tree.
|
||||
*/
|
||||
|
||||
/*!
|
||||
* \file
|
||||
* \brief Basic bridge subclass API.
|
||||
*
|
||||
* \author Richard Mudgett <rmudgett@digium.com>
|
||||
*
|
||||
* See Also:
|
||||
* \arg \ref AstCREDITS
|
||||
*/
|
||||
|
||||
#ifndef _ASTERISK_BRIDGING_BASIC_H
|
||||
#define _ASTERISK_BRIDGING_BASIC_H
|
||||
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
extern "C" {
|
||||
#endif
|
||||
|
||||
/* ------------------------------------------------------------------- */
|
||||
|
||||
/*!
|
||||
* \brief Sets the features a channel will use upon being bridged.
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param chan Which channel to set features for
|
||||
* \param features Which feature codes to set for the channel
|
||||
*
|
||||
* \retval 0 on success
|
||||
* \retval -1 on failure
|
||||
*/
|
||||
int ast_bridge_features_ds_set_string(struct ast_channel *chan, const char *features);
|
||||
|
||||
/*!
|
||||
* \brief writes a channel's DTMF features to a buffer string
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param chan channel whose feature flags should be checked
|
||||
* \param buffer pointer string buffer where the output should be stored
|
||||
* \param buf_size size of the provided buffer (ideally enough for all features, 6+)
|
||||
*
|
||||
* \retval 0 on successful write
|
||||
* \retval -1 on failure
|
||||
*/
|
||||
int ast_bridge_features_ds_get_string(struct ast_channel *chan, char *buffer, size_t buf_size);
|
||||
|
||||
/*!
|
||||
* \brief Get DTMF feature flags from the channel.
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param chan Channel to get DTMF features datastore.
|
||||
*
|
||||
* \note The channel should be locked before calling this function.
|
||||
* \note The channel must remain locked until the flags returned have been consumed.
|
||||
*
|
||||
* \retval flags on success.
|
||||
* \retval NULL if the datastore does not exist.
|
||||
*/
|
||||
struct ast_flags *ast_bridge_features_ds_get(struct ast_channel *chan);
|
||||
|
||||
/*!
|
||||
* \brief Set basic bridge DTMF feature flags datastore on the channel.
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param chan Channel to set DTMF features datastore.
|
||||
* \param flags Builtin DTMF feature flags. (ast_bridge_config flags)
|
||||
*
|
||||
* \note The channel must be locked before calling this function.
|
||||
*
|
||||
* \retval 0 on success.
|
||||
* \retval -1 on error.
|
||||
*/
|
||||
int ast_bridge_features_ds_set(struct ast_channel *chan, struct ast_flags *flags);
|
||||
|
||||
/*!
|
||||
* \brief Setup DTMF feature hooks using the channel features datastore property.
|
||||
* \since 12.0.0
|
||||
*
|
||||
* \param bridge_channel What to setup DTMF features on.
|
||||
*
|
||||
* \retval 0 on success.
|
||||
* \retval -1 on error.
|
||||
*/
|
||||
int ast_bridge_channel_setup_features(struct ast_bridge_channel *bridge_channel);
|
||||
|
||||
/*! \brief Bridge basic class virtual method table. */
|
||||
extern struct ast_bridge_methods ast_bridge_basic_v_table;
|
||||
|
||||
/*!
|
||||
* \brief Create a new basic class bridge
|
||||
*
|
||||
* \retval a pointer to a new bridge on success
|
||||
* \retval NULL on failure
|
||||
*
|
||||
* Example usage:
|
||||
*
|
||||
* \code
|
||||
* struct ast_bridge *bridge;
|
||||
* bridge = ast_bridge_basic_new();
|
||||
* \endcode
|
||||
*
|
||||
* This creates a basic two party bridge with any configured
|
||||
* DTMF features enabled that will be destroyed once one of the
|
||||
* channels hangs up.
|
||||
*/
|
||||
struct ast_bridge *ast_bridge_basic_new(void);
|
||||
|
||||
/*! Initialize the basic bridge class for use by the system. */
|
||||
void ast_bridging_init_basic(void);
|
||||
|
||||
/* ------------------------------------------------------------------- */
|
||||
|
||||
#if defined(__cplusplus) || defined(c_plusplus)
|
||||
}
|
||||
#endif
|
||||
|
||||
#endif /* _ASTERISK_BRIDGING_BASIC_H */
|
Reference in New Issue
Block a user