Asterisk - The Open Source Telephony Project
18.5.0
|
Technology independent asynchronous DTMF collection. More...
#include "asterisk.h"
#include "asterisk/module.h"
#include "asterisk/channel.h"
#include "asterisk/pbx.h"
#include "asterisk/framehook.h"
#include "asterisk/app.h"
#include "asterisk/conversions.h"
Go to the source code of this file.
Data Structures | |
struct | dtmf_store_data |
Private data structure used with the function's datastore. More... | |
Functions | |
AST_MODULE_INFO_STANDARD_EXTENDED (ASTERISK_GPL_KEY, "Technology independent async DTMF storage") | |
static void | datastore_destroy_cb (void *data) |
static struct ast_frame * | dtmf_store_framehook (struct ast_channel *chan, struct ast_frame *f, enum ast_framehook_event event, void *data) |
Frame hook that is called to intercept digit/undigit. More... | |
static int | dtmfstore_exec (struct ast_channel *chan, const char *appdata) |
static int | load_module (void) |
static int | remove_dtmf_store (struct ast_channel *chan) |
static int | unload_module (void) |
Variables | |
static char * | app = "StoreDTMF" |
static const struct ast_datastore_info | dtmf_store_datastore |
The channel datastore the function uses to store state. More... | |
Technology independent asynchronous DTMF collection.
Definition in file app_dtmfstore.c.
AST_MODULE_INFO_STANDARD_EXTENDED | ( | ASTERISK_GPL_KEY | , |
"Technology independent async DTMF storage" | |||
) |
Referenced by load_module().
|
static |
Definition at line 79 of file app_dtmfstore.c.
References ast_free, d, dtmf_store_data::rx_var, and dtmf_store_data::tx_var.
|
static |
Frame hook that is called to intercept digit/undigit.
Definition at line 131 of file app_dtmfstore.c.
References ast_copy_string(), ast_debug, AST_FRAME_DTMF_END, AST_FRAMEHOOK_EVENT_READ, AST_FRAMEHOOK_EVENT_WRITE, ast_strlen_zero, ast_frame::frametype, ast_frame_subclass::integer, len(), dtmf_store_data::maxdigits, NULL, pbx_builtin_setvar_helper(), pbx_substitute_variables_helper(), remove_dtmf_store(), dtmf_store_data::rx_var, ast_frame::subclass, and dtmf_store_data::tx_var.
Referenced by dtmfstore_exec().
|
static |
Definition at line 188 of file app_dtmfstore.c.
References args, AST_APP_ARG, ast_calloc, ast_channel_datastore_add(), ast_channel_datastore_find(), ast_channel_name(), ast_datastore_alloc, ast_datastore_free(), AST_DECLARE_APP_ARGS, ast_framehook_attach(), AST_FRAMEHOOK_INTERFACE_VERSION, ast_free, ast_log, AST_LOG_WARNING, AST_STANDARD_APP_ARGS, ast_str_to_int(), ast_strdup, ast_strdupa, ast_strlen_zero, ast_datastore::data, ast_framehook_interface::data, dtmf_store_framehook(), dtmf_store_data::framehook_id, LOG_ERROR, LOG_WARNING, dtmf_store_data::maxdigits, NULL, parse(), remove_dtmf_store(), dtmf_store_data::rx_var, SCOPED_CHANNELLOCK, dtmf_store_data::tx_var, and ast_framehook_interface::version.
Referenced by load_module().
|
static |
Definition at line 281 of file app_dtmfstore.c.
References app, AST_MODULE_INFO_STANDARD_EXTENDED(), ast_register_application_xml, ASTERISK_GPL_KEY, and dtmfstore_exec().
|
static |
Definition at line 100 of file app_dtmfstore.c.
References ast_channel_datastore_find(), ast_channel_datastore_remove(), ast_channel_name(), ast_datastore_free(), ast_framehook_detach(), ast_log, AST_LOG_WARNING, ast_datastore::data, dtmf_store_data::framehook_id, NULL, and SCOPED_CHANNELLOCK.
Referenced by dtmf_store_framehook(), and dtmfstore_exec().
|
static |
Definition at line 276 of file app_dtmfstore.c.
References app, and ast_unregister_application().
|
static |
Definition at line 69 of file app_dtmfstore.c.
Referenced by load_module(), and unload_module().
|
static |
The channel datastore the function uses to store state.
Definition at line 94 of file app_dtmfstore.c.