| Asterisk - The Open Source Telephony Project GIT-master-27fb039
    | 
Parking Bridge Class. More...
#include "asterisk.h"#include "res_parking.h"#include "asterisk/astobj2.h"#include "asterisk/logger.h"#include "asterisk/say.h"#include "asterisk/term.h"#include "asterisk/features.h"#include "asterisk/bridge_internal.h"
Go to the source code of this file.
| Data Structures | |
| struct | ast_bridge_parking | 
| Functions | |
| static struct ast_bridge * | ast_bridge_parking_init (struct ast_bridge_parking *self, struct parking_lot *bridge_lot) | 
| static void | bridge_parking_destroy (struct ast_bridge_parking *self) | 
| static void | bridge_parking_dissolving (struct ast_bridge_parking *self) | 
| static void | bridge_parking_get_merge_priority (struct ast_bridge_parking *self) | 
| struct ast_bridge * | bridge_parking_new (struct parking_lot *bridge_lot) | 
| Create a new parking bridge. | |
| static void | bridge_parking_notify_masquerade (struct ast_bridge_parking *self, struct ast_bridge_channel *bridge_channel) | 
| static void | bridge_parking_pull (struct ast_bridge_parking *self, struct ast_bridge_channel *bridge_channel) | 
| static int | bridge_parking_push (struct ast_bridge_parking *self, struct ast_bridge_channel *bridge_channel, struct ast_bridge_channel *swap) | 
| static void | destroy_parked_user (void *obj) | 
| static struct parked_user * | generate_parked_user (struct parking_lot *lot, struct ast_channel *chan, const char *parker_channel_name, const char *parker_dial_string, int use_random_space, int time_limit) | 
| static int | parked_user_set_parker_dial_string (struct parked_user *pu, const char *parker_channel_name) | 
| Variables | |
| struct ast_bridge_methods | ast_bridge_parking_v_table | 
Parking Bridge Class.
Definition in file parking_bridge.c.
| 
 | static | 
Definition at line 432 of file parking_bridge.c.
References ao2_ref, ast_bridge_parking::base, ast_bridge_parking::lot, and NULL.
Referenced by bridge_parking_new().
| 
 | static | 
Definition at line 52 of file parking_bridge.c.
References ast_bridge_base_v_table, ast_bridge_parking::base, and ast_bridge_methods::destroy.
| 
 | static | 
Definition at line 57 of file parking_bridge.c.
References ast_bridge_base_v_table, ast_bridge_parking::base, ast_bridge_methods::dissolving, ast_bridge_parking::lot, and NULL.
| 
 | static | 
Definition at line 417 of file parking_bridge.c.
References ast_bridge_base_v_table, ast_bridge_parking::base, and ast_bridge_methods::get_merge_priority.
| struct ast_bridge * bridge_parking_new | ( | struct parking_lot * | bridge_lot | ) | 
Create a new parking bridge.
| bridge_lot | Parking lot which the new bridge should be based on | 
| NULL | if the bridge can not be created | 
Definition at line 450 of file parking_bridge.c.
References AST_BRIDGE_CAPABILITY_HOLDING, AST_BRIDGE_FLAG_MERGE_INHIBIT_FROM, AST_BRIDGE_FLAG_MERGE_INHIBIT_TO, AST_BRIDGE_FLAG_SWAP_INHIBIT_FROM, ast_bridge_parking_init(), ast_bridge_parking_v_table, bridge_alloc(), bridge_base_init(), bridge_register(), parking_lot::name, and NULL.
Referenced by parking_lot_get_bridge().
| 
 | static | 
Definition at line 412 of file parking_bridge.c.
References ast_bridge_base_v_table, ast_bridge_parking::base, and ast_bridge_methods::notify_masquerade.
| 
 | static | 
Definition at line 338 of file parking_bridge.c.
References ao2_cleanup, ao2_lock, ao2_unlock, ast_bridge_base_v_table, ast_bridge_channel_queue_playfile(), AST_DEVICE_NOT_INUSE, AST_FEATURE_FLAG_BYCALLEE, ast_bridge_parking::base, ast_bridge_channel::bridge_pvt, parking_lot::cfg, ast_bridge_channel::chan, ast_bridge_parking::lot, NULL, PARK_ABANDON, PARK_ANSWERED, PARK_FORCED, PARK_TIMEOUT, PARK_UNSET, PARKED_CALL_GIVEUP, parked_call_retrieve_enable_features(), PARKED_CALL_TIMEOUT, PARKED_CALL_UNPARKED, parking_lot_cfg::parking_con, parking_notify_metermaids(), publish_parked_call(), ast_bridge_methods::pull, RAII_VAR, and unpark_parked_user().
| 
 | static | 
Definition at line 204 of file parking_bridge.c.
References ao2_cleanup, ast_answer(), ast_assert, ast_bridge_base_v_table, ast_bridge_channel_get_role_option(), ast_bridge_channel_has_role(), ast_bridge_channel_lock, ast_bridge_channel_queue_playfile(), ast_bridge_channel_unlock, ast_channel_lock, ast_channel_name(), ast_channel_snapshot_get_latest(), ast_channel_unlock, ast_copy_string(), AST_DEVICE_INUSE, ast_log, AST_STATE_UP, ast_strdupa, ast_strlen_zero(), ast_verb, ast_channel_snapshot::base, ast_bridge_parking::base, ast_bridge_channel::bridge_pvt, parking_lot::cfg, ast_bridge_channel::chan, parked_user::chan, COLOR_BRMAGENTA, COLORIZE, COLORIZE_FMT, parked_user::comeback, ast_bridge_channel::features, generate_parked_user(), get_park_common_datastore_copy(), LOG_WARNING, ast_bridge_parking::lot, ast_channel_snapshot_base::name, parking_lot::name, NULL, park_common_datastore_free(), PARKED_CALL, PARKED_CALL_SWAP, parking_channel_set_roles(), parking_lot_cfg::parking_con, parking_notify_metermaids(), parking_set_duration(), parked_user::parking_space, pbx_builtin_getvar_helper(), publish_parked_call(), publish_parked_call_failure(), ast_bridge_methods::push, RAII_VAR, S_OR, say_parking_space(), and parked_user::start.
| 
 | static | 
Definition at line 63 of file parking_bridge.c.
References ao2_cleanup, ast_free, and parked_user::start.
Referenced by generate_parked_user().
| 
 | static | 
Definition at line 107 of file parking_bridge.c.
References ao2_alloc, ao2_link, ao2_lock, ao2_ref, ao2_unlock, ast_channel_lock, ast_channel_unlock, ast_log, ast_random(), ast_strdup, ast_strdupa, ast_strlen_zero(), ast_tvnow(), parking_lot::cfg, parked_user::chan, destroy_parked_user(), LOG_NOTICE, LOG_WARNING, parked_user::lot, parking_lot::mode, parking_lot::name, parking_lot::next_space, NULL, parked_user_set_parker_dial_string(), parking_lot::parked_users, parked_user::parker_dial_string, parking_lot_get_space(), parked_user::parking_space, parking_lot_cfg::parking_start, parking_lot_cfg::parking_stop, PARKINGLOT_DISABLED, parking_lot_cfg::parkingtime, pbx_builtin_getvar_helper(), parked_user::start, and parked_user::time_limit.
Referenced by bridge_parking_push().
| 
 | static | 
Definition at line 73 of file parking_bridge.c.
References ast_channel_name_to_dial_string(), ast_strdup, ast_strdupa, and parked_user::start.
Referenced by generate_parked_user().
| struct ast_bridge_methods ast_bridge_parking_v_table | 
Definition at line 422 of file parking_bridge.c.
Referenced by bridge_parking_new().