| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
Channel Bridging API. More...

Go to the source code of this file.
| Data Structures | |
| struct | ast_bridge_tech_optimizations | 
| Structure specific to bridge technologies capable of performing talking optimizations.  More... | |
| struct | ast_bridge_technology | 
| Structure that is the essence of a bridge technology.  More... | |
| Macros | |
| #define | ast_bridge_technology_register(technology) __ast_bridge_technology_register(technology, AST_MODULE_SELF) | 
| See __ast_bridge_technology_register() | |
| Enumerations | |
| enum | ast_bridge_preference { AST_BRIDGE_PREFERENCE_BASE_HOLDING = 50 , AST_BRIDGE_PREFERENCE_BASE_EARLY = 100 , AST_BRIDGE_PREFERENCE_BASE_NATIVE = 90 , AST_BRIDGE_PREFERENCE_BASE_1TO1MIX = 50 , AST_BRIDGE_PREFERENCE_BASE_MULTIMIX = 10 } | 
| Base preference values for choosing a bridge technology.  More... | |
| Functions | |
| int | __ast_bridge_technology_register (struct ast_bridge_technology *technology, struct ast_module *mod) | 
| Register a bridge technology for use. | |
| void | ast_bridge_technology_suspend (struct ast_bridge_technology *technology) | 
| Suspend a bridge technology from consideration. | |
| int | ast_bridge_technology_unregister (struct ast_bridge_technology *technology) | 
| Unregister a bridge technology from use. | |
| void | ast_bridge_technology_unsuspend (struct ast_bridge_technology *technology) | 
| Unsuspend a bridge technology. | |
Channel Bridging API.
Definition in file bridge_technology.h.
| #define ast_bridge_technology_register | ( | technology | ) | __ast_bridge_technology_register(technology, AST_MODULE_SELF) | 
See __ast_bridge_technology_register()
Definition at line 223 of file bridge_technology.h.
Base preference values for choosing a bridge technology.
| Enumerator | |
|---|---|
| AST_BRIDGE_PREFERENCE_BASE_HOLDING | |
| AST_BRIDGE_PREFERENCE_BASE_EARLY | |
| AST_BRIDGE_PREFERENCE_BASE_NATIVE | |
| AST_BRIDGE_PREFERENCE_BASE_1TO1MIX | |
| AST_BRIDGE_PREFERENCE_BASE_MULTIMIX | |
Definition at line 36 of file bridge_technology.h.
| int __ast_bridge_technology_register | ( | struct ast_bridge_technology * | technology, | 
| struct ast_module * | mod | ||
| ) | 
Register a bridge technology for use.
| technology | The bridge technology to register | 
| mod | The module that is registering the bridge technology | 
| 0 | on success | 
| -1 | on failure | 
Example usage:
This registers a bridge technology declared as the structure simple_bridge_tech with the bridging core and makes it available for use when creating bridges.
Definition at line 223 of file bridge.c.
References ast_log, AST_RWLIST_INSERT_BEFORE_CURRENT, AST_RWLIST_INSERT_TAIL, AST_RWLIST_TRAVERSE, AST_RWLIST_TRAVERSE_SAFE_BEGIN, AST_RWLIST_TRAVERSE_SAFE_END, AST_RWLIST_UNLOCK, AST_RWLIST_WRLOCK, ast_strlen_zero(), ast_verb, ast_bridge_technology::capabilities, current, LOG_WARNING, ast_bridge_technology::mod, ast_bridge_technology::name, ast_bridge_technology::preference, ast_bridge_technology::start, and ast_bridge_technology::write.
| void ast_bridge_technology_suspend | ( | struct ast_bridge_technology * | technology | ) | 
Suspend a bridge technology from consideration.
| technology | The bridge technology to suspend | 
Example usage:
This suspends the bridge technology simple_bridge_tech from being considered when creating a new bridge. Existing bridges using the bridge technology are not affected.
Definition at line 3126 of file bridge.c.
References ast_bridge_technology::suspended.
Referenced by handle_bridge_technology_suspend(), and handle_manager_bridge_tech_suspend().
| int ast_bridge_technology_unregister | ( | struct ast_bridge_technology * | technology | ) | 
Unregister a bridge technology from use.
| technology | The bridge technology to unregister | 
| 0 | on success | 
| -1 | on failure | 
Example usage:
This unregisters a bridge technlogy declared as the structure simple_bridge_tech with the bridging core. It will no longer be considered when creating a new bridge.
Definition at line 274 of file bridge.c.
References AST_RWLIST_REMOVE_CURRENT, AST_RWLIST_TRAVERSE_SAFE_BEGIN, AST_RWLIST_TRAVERSE_SAFE_END, AST_RWLIST_UNLOCK, AST_RWLIST_WRLOCK, ast_verb, current, and ast_bridge_technology::name.
Referenced by dahdi_native_unload(), unload_module(), unload_module(), unload_module(), and unload_module().
| void ast_bridge_technology_unsuspend | ( | struct ast_bridge_technology * | technology | ) | 
Unsuspend a bridge technology.
| technology | The bridge technology to unsuspend | 
Example usage:
This makes the bridge technology simple_bridge_tech considered when creating a new bridge again.
Definition at line 3131 of file bridge.c.
References ast_bridge_technology::suspended.
Referenced by handle_bridge_technology_suspend(), and handle_manager_bridge_tech_suspend().