Asterisk - The Open Source Telephony Project
18.5.0
|
The payload for an AST_CONTROL_CC frame. More...
Data Fields | |
struct ast_cc_config_params | config_params |
Configuration parameters used by this endpoint. More... | |
char | device_name [AST_CHANNEL_NAME] |
Name of device to be monitored. More... | |
char | dialstring [AST_CHANNEL_NAME] |
Recall dialstring. More... | |
const char * | monitor_type |
The type of monitor to allocate. More... | |
int | parent_interface_id |
ID of parent extension. More... | |
void * | private_data |
Private data allocated by the callee. More... | |
enum ast_cc_service_type | service |
Service offered by the endpoint. More... | |
The payload for an AST_CONTROL_CC frame.
This contains all the necessary data regarding a called device so that the CC core will be able to allocate the proper monitoring resources.
struct ast_cc_config_params config_params |
Configuration parameters used by this endpoint.
Each time an endpoint offers call completion, it must provide its call completion configuration parameters. This is because settings may be different depending on the circumstances.
Definition at line 275 of file ccss.c.
Referenced by cc_build_payload(), and cc_device_monitor_init().
char device_name[AST_CHANNEL_NAME] |
Name of device to be monitored.
The device name by which this monitored endpoint will be referred in the CC core. It is highly recommended that this device name is derived by using the function ast_channel_get_device_name.
Definition at line 293 of file ccss.c.
Referenced by ast_cc_call_failed(), ast_handle_cc_control_frame(), and cc_build_payload().
char dialstring[AST_CHANNEL_NAME] |
Recall dialstring.
Certain channel drivers (DAHDI in particular) will require that a special dialstring be used to indicate that the outgoing call is to interpreted as a CC recall. If the channel driver has such a requirement, then this is where that special recall dialstring is placed. If no special dialstring is to be used, then the channel driver must provide the original dialstring used to call this endpoint.
Definition at line 305 of file ccss.c.
Referenced by ast_handle_cc_control_frame(), and cc_build_payload().
const char* monitor_type |
The type of monitor to allocate.
The type of monitor to allocate. This is a string which corresponds to a set of monitor callbacks registered. Examples include "generic" and "SIP"
In addition the following other problems are also possible: 1) Endian issues with the integers/enums stored in the config_params. 2) Alignment padding issues for the element types.
Definition at line 240 of file ccss.c.
Referenced by ast_handle_cc_control_frame(), cc_build_payload(), and cc_device_monitor_init().
int parent_interface_id |
ID of parent extension.
This is the only datum that the CC core derives on its own and is not provided by the offerer of CC. This provides the core with information on which extension monitor is the most immediate parent of this device.
Definition at line 284 of file ccss.c.
Referenced by cc_build_payload(), and cc_device_monitor_init().
void* private_data |
Private data allocated by the callee.
All channel drivers that monitor endpoints will need to allocate data that is not usable by the CC core. In most cases, some or all of this data is allocated at the time that the channel driver offers CC to the caller. There are many opportunities for failures to occur between when a channel driver offers CC and when a monitor is actually allocated to watch the endpoint. For this reason, the channel driver must give the core a pointer to the private data that was allocated so that the core can call back into the channel driver to destroy it if a failure occurs. If no private data has been allocated at the time that CC is offered, then it is perfectly acceptable to pass NULL for this field.
Definition at line 257 of file ccss.c.
Referenced by ast_handle_cc_control_frame(), cc_build_payload(), and cc_device_monitor_init().
enum ast_cc_service_type service |
Service offered by the endpoint.
This indicates the type of call completion service offered by the endpoint. This data is not crucial to the machinations of the CC core, but it is helpful for debugging purposes.
Definition at line 266 of file ccss.c.
Referenced by ast_handle_cc_control_frame(), cc_build_payload(), and cc_device_monitor_init().