[Freeswitch-svn] [commit] r10252 - in freeswitch/trunk/src/mod/applications: mod_commands mod_dptools
Freeswitch SVN
anthm at freeswitch.org
Wed Nov 5 12:25:54 EST 2008
Author: anthm
Date: Wed Nov 5 12:25:54 2008
New Revision: 10252
Modified:
freeswitch/trunk/src/mod/applications/mod_commands/mod_commands.c
freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c
Log:
add flush_dtmf app and uuid_flush_dtmf api command
Modified: freeswitch/trunk/src/mod/applications/mod_commands/mod_commands.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_commands/mod_commands.c (original)
+++ freeswitch/trunk/src/mod/applications/mod_commands/mod_commands.c Wed Nov 5 12:25:54 2008
@@ -2477,6 +2477,21 @@
}
+SWITCH_STANDARD_API(uuid_flush_dtmf_function)
+{
+ switch_core_session_t *fsession;
+
+ if (!switch_strlen_zero(cmd) && (fsession = switch_core_session_locate(cmd))) {
+ switch_channel_flush_dtmf(switch_core_session_get_channel(fsession));
+ switch_core_session_rwunlock(fsession);
+ stream->write_function(stream, "+OK\n");
+ } else {
+ stream->write_function(stream, "-ERR no such session\n");
+ }
+
+ return SWITCH_STATUS_SUCCESS;
+}
+
#define SETVAR_SYNTAX "<uuid> <var> <value>"
SWITCH_STANDARD_API(uuid_setvar_function)
{
@@ -2815,6 +2830,7 @@
switch_api_interface_t *commands_api_interface;
*module_interface = switch_loadable_module_create_module_interface(pool, modname);
+ SWITCH_ADD_API(commands_api_interface, "uuid_flush_dtmf", "Flush dtmf on a given uuid", uuid_flush_dtmf_function, "<uuid>");
SWITCH_ADD_API(commands_api_interface, "md5", "md5", md5_function, "<data>");
SWITCH_ADD_API(commands_api_interface, "hupall", "hupall", hupall_api_function, "<cause> [<var> <value>]");
SWITCH_ADD_API(commands_api_interface, "strftime_tz", "strftime_tz", strftime_tz_api_function, "<Timezone_name> [format string]");
Modified: freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c (original)
+++ freeswitch/trunk/src/mod/applications/mod_dptools/mod_dptools.c Wed Nov 5 12:25:54 2008
@@ -411,6 +411,11 @@
}
+SWITCH_STANDARD_APP(flush_dtmf_function)
+{
+ switch_channel_flush_dtmf(switch_core_session_get_channel(session));
+}
+
SWITCH_STANDARD_APP(transfer_function)
{
int argc;
@@ -2279,6 +2284,7 @@
SWITCH_ADD_APP(app_interface, "privacy", "Set privacy on calls", "Set caller privacy on calls.", privacy_function, "off|on|name|full|number",
SAF_SUPPORT_NOMEDIA);
+ SWITCH_ADD_APP(app_interface, "flush_dtmf", "flush any queued dtmf", "flush any queued dtmf", flush_dtmf_function, "", SAF_SUPPORT_NOMEDIA);
SWITCH_ADD_APP(app_interface, "hold", "Send a hold message", "Send a hold message", hold_function, HOLD_SYNTAX, SAF_SUPPORT_NOMEDIA);
SWITCH_ADD_APP(app_interface, "unhold", "Send a un-hold message", "Send a un-hold message", unhold_function, UNHOLD_SYNTAX, SAF_SUPPORT_NOMEDIA);
SWITCH_ADD_APP(app_interface, "transfer", "Transfer a channel", TRANSFER_LONG_DESC, transfer_function, "<exten> [<dialplan> <context>]",
More information about the Freeswitch-svn
mailing list