Asterisk - The Open Source Telephony Project  18.5.0
Data Fields
ast_parking_bridge_feature_fn_table Struct Reference

A function table providing parking functionality to the Bridging API Bridging API and other consumers. More...

#include <parking.h>

Collaboration diagram for ast_parking_bridge_feature_fn_table:
Collaboration graph
[legend]

Data Fields

struct ast_modulemodule
 The module info for the module registering this parking provider. More...
 
const char * module_name
 The name of the module that provides this parking functionality. More...
 
unsigned int module_version
 The version of this function table. If the ABI for this table changes, the module version (/ref PARKING_MODULE_VERSION) should be incremented. More...
 
int(* parking_blind_transfer_park )(struct ast_bridge_channel *parker, const char *context, const char *exten, transfer_channel_cb parked_channel_cb, struct transfer_channel_data *parked_channel_data)
 Perform a blind transfer to a parking extension. More...
 
int(* parking_is_exten_park )(const char *context, const char *exten)
 Determine if the context/exten is a "parking" extension. More...
 
int(* parking_park_bridge_channel )(struct ast_bridge_channel *parkee, const char *parkee_uuid, const char *parker_uuid, const char *app_data)
 Perform a direct park on a channel in a bridge. More...
 
int(* parking_park_call )(struct ast_bridge_channel *parker, char *exten, size_t length)
 Park the bridge and/or callers that this channel is in. More...
 

Detailed Description

A function table providing parking functionality to the Bridging API Bridging API and other consumers.

Definition at line 127 of file parking.h.

Field Documentation

◆ module

struct ast_module* module

The module info for the module registering this parking provider.

Definition at line 202 of file parking.h.

Referenced by load_parking_bridge_features().

◆ module_name

const char* module_name

The name of the module that provides this parking functionality.

Definition at line 139 of file parking.h.

Referenced by unload_parking_bridge_features().

◆ module_version

unsigned int module_version

The version of this function table. If the ABI for this table changes, the module version (/ref PARKING_MODULE_VERSION) should be incremented.

Definition at line 134 of file parking.h.

Referenced by ast_parking_register_bridge_features().

◆ parking_blind_transfer_park

int(* parking_blind_transfer_park) (struct ast_bridge_channel *parker, const char *context, const char *exten, transfer_channel_cb parked_channel_cb, struct transfer_channel_data *parked_channel_data)

Perform a blind transfer to a parking extension.

Parameters
parkerThe bridge_channel object that is initiating the parking
contextThe context to blind transfer to
extenThe extension to blind transfer to
parked_channel_cbExecute the following function on the channel that gets parked
parked_channel_dataData for the parked_channel_cb
Note
If the bridge parker is in has more than one other occupant, the entire bridge will be parked using a Local channel
This is safe to be called outside of the Bridging API Bridging API.
Return values
0on success
non-zeroon error

Definition at line 181 of file parking.h.

◆ parking_is_exten_park

int(* parking_is_exten_park) (const char *context, const char *exten)

Determine if the context/exten is a "parking" extension.

Return values
0if the extension is not a parking extension
1if the extension is a parking extension

Definition at line 147 of file parking.h.

◆ parking_park_bridge_channel

int(* parking_park_bridge_channel) (struct ast_bridge_channel *parkee, const char *parkee_uuid, const char *parker_uuid, const char *app_data)

Perform a direct park on a channel in a bridge.

Parameters
parkeeThe channel in the bridge to be parked.
parkee_uuidThe UUID of the channel being packed.
parker_uuidThe UUID of the channel performing the park.
app_dataData to pass to the Park application
Note
This must be called within the context of the Bridging API Bridging API. External entities should not call this method directly, but should instead use the direct call parking method or the blind transfer method.
Return values
0on success
non-zeroon error

Definition at line 199 of file parking.h.

◆ parking_park_call

int(* parking_park_call) (struct ast_bridge_channel *parker, char *exten, size_t length)

Park the bridge and/or callers that this channel is in.

Parameters
parkerThe bridge_channel parking the bridge
extenOptional. The extension the channel or bridge was parked at if the call succeeds.
lengthOptional. If exten is specified, the size of the buffer.
Note
This is safe to be called outside of the Bridging API Bridging API.
Return values
0on success
non-zeroon error

Definition at line 162 of file parking.h.


The documentation for this struct was generated from the following file: