| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
Built in bridging features. More...
#include "asterisk.h"#include <stdio.h>#include <stdlib.h>#include <string.h>#include <sys/types.h>#include <sys/stat.h>#include "asterisk/module.h"#include "asterisk/channel.h"#include "asterisk/bridge.h"#include "asterisk/bridge_technology.h"#include "asterisk/frame.h"#include "asterisk/file.h"#include "asterisk/app.h"#include "asterisk/astobj2.h"#include "asterisk/pbx.h"#include "asterisk/parking.h"#include "asterisk/features_config.h"#include "asterisk/mixmonitor.h"#include "asterisk/audiohook.h"#include "asterisk/causes.h"#include "asterisk/beep.h"
Go to the source code of this file.
| Enumerations | |
| enum | set_touch_variables_res { SET_TOUCH_SUCCESS , SET_TOUCH_UNSET , SET_TOUCH_ALLOC_FAILURE } | 
| Functions | |
| static void | __reg_module (void) | 
| static void | __unreg_module (void) | 
| struct ast_module * | AST_MODULE_SELF_SYM (void) | 
| static int | feature_automixmonitor (struct ast_bridge_channel *bridge_channel, void *hook_pvt) | 
| static int | feature_hangup (struct ast_bridge_channel *bridge_channel, void *hook_pvt) | 
| Internal built in feature for hangup. | |
| static int | load_module (void) | 
| static void | set_touch_variable (enum set_touch_variables_res *res, struct ast_channel *chan, const char *var_name, char **touch) | 
| static enum set_touch_variables_res | set_touch_variables (struct ast_channel *chan, char **touch_format, char **touch_monitor, char **touch_monitor_prefix, char **touch_monitor_beep) | 
| static void | start_automixmonitor (struct ast_bridge_channel *bridge_channel, struct ast_channel *peer_chan, struct ast_features_general_config *features_cfg, const char *start_message) | 
| static void | stop_automixmonitor (struct ast_bridge_channel *bridge_channel, struct ast_channel *peer_chan, struct ast_features_general_config *features_cfg, const char *stop_message) | 
| static int | unload_module (void) | 
| Variables | |
| static struct ast_module_info | __mod_info = { .name = AST_MODULE, .flags = AST_MODFLAG_DEFAULT , .description = "Built in bridging features" , .key = ASTERISK_GPL_KEY , .buildopt_sum = AST_BUILDOPT_SUM, .support_level = AST_MODULE_SUPPORT_CORE, .load = load_module, .unload = unload_module, } | 
| static const struct ast_module_info * | ast_module_info = &__mod_info | 
Built in bridging features.
Definition in file bridge_builtin_features.c.
| Enumerator | |
|---|---|
| SET_TOUCH_SUCCESS | |
| SET_TOUCH_UNSET | |
| SET_TOUCH_ALLOC_FAILURE | |
Definition at line 56 of file bridge_builtin_features.c.
| 
 | static | 
Definition at line 346 of file bridge_builtin_features.c.
| 
 | static | 
Definition at line 346 of file bridge_builtin_features.c.
| struct ast_module * AST_MODULE_SELF_SYM | ( | void | ) | 
Definition at line 346 of file bridge_builtin_features.c.
| 
 | static | 
Definition at line 228 of file bridge_builtin_features.c.
References ao2_cleanup, AST_AUDIOHOOK_TYPE_SPY, ast_bridge_channel_lock_bridge(), ast_bridge_channel_queue_playfile(), ast_bridge_peer_nolock(), ast_bridge_unlock, ast_channel_audiohook_count_by_source(), ast_channel_cleanup, ast_channel_lock, ast_channel_name(), ast_channel_unlock, ast_get_chan_features_general_config(), ast_strdupa, ast_strlen_zero(), ast_verb, AUTO_MONITOR_START, AUTO_MONITOR_STOP, AUTO_MONITOR_TOGGLE, ast_bridge_channel::bridge, ast_bridge_channel::chan, mixmonitor_spy_type, NULL, options, pbx_builtin_getvar_helper(), RAII_VAR, S_OR, start_automixmonitor(), ast_bridge_features_automixmonitor::start_stop, and stop_automixmonitor().
Referenced by load_module().
| 
 | static | 
Internal built in feature for hangup.
Definition at line 311 of file bridge_builtin_features.c.
References ast_bridge_channel_leave_bridge(), AST_CAUSE_NORMAL_CLEARING, and BRIDGE_CHANNEL_STATE_END.
Referenced by load_module().
| 
 | static | 
Definition at line 331 of file bridge_builtin_features.c.
References AST_BRIDGE_BUILTIN_AUTOMIXMON, AST_BRIDGE_BUILTIN_HANGUP, ast_bridge_features_register(), AST_MODULE_LOAD_SUCCESS, ast_module_shutdown_ref, feature_automixmonitor(), feature_hangup(), NULL, and ast_module_info::self.
| 
 | static | 
Definition at line 62 of file bridge_builtin_features.c.
References ast_strdup, ast_strlen_zero(), pbx_builtin_getvar_helper(), SET_TOUCH_ALLOC_FAILURE, and SET_TOUCH_SUCCESS.
Referenced by set_touch_variables().
| 
 | static | 
Definition at line 80 of file bridge_builtin_features.c.
References lock, SCOPED_CHANNELLOCK, SET_TOUCH_UNSET, and set_touch_variable().
Referenced by start_automixmonitor().
| 
 | static | 
Definition at line 127 of file bridge_builtin_features.c.
References ast_alloca, ast_bridge_channel_queue_playfile(), ast_bridge_channel_write_playfile(), ast_channel_caller(), ast_channel_name(), ast_free, ast_log, ast_start_mixmonitor(), ast_strdupa, ast_strlen_zero(), ast_verb, ast_bridge_channel::chan, ast_features_general_config::courtesytone, ast_party_caller::id, len(), LOG_WARNING, NULL, ast_party_id::number, pbx_builtin_setvar_helper(), RAII_VAR, ast_features_general_config::recordingfailsound, S_COR, S_OR, SET_TOUCH_ALLOC_FAILURE, SET_TOUCH_SUCCESS, SET_TOUCH_UNSET, set_touch_variables(), ast_party_number::str, and ast_party_number::valid.
Referenced by feature_automixmonitor().
| 
 | static | 
Definition at line 104 of file bridge_builtin_features.c.
References ast_bridge_channel_queue_playfile(), ast_bridge_channel_write_playfile(), ast_channel_name(), ast_stop_mixmonitor(), ast_strlen_zero(), ast_verb, ast_bridge_channel::chan, ast_features_general_config::courtesytone, NULL, and ast_features_general_config::recordingfailsound.
Referenced by feature_automixmonitor().
| 
 | static | 
Definition at line 323 of file bridge_builtin_features.c.
References AST_BRIDGE_BUILTIN_AUTOMIXMON, AST_BRIDGE_BUILTIN_HANGUP, and ast_bridge_features_unregister().
| 
 | static | 
Definition at line 346 of file bridge_builtin_features.c.
| 
 | static | 
Definition at line 346 of file bridge_builtin_features.c.