[Freeswitch-svn] [commit] r7952 - freeswitch/trunk/src/mod/applications/mod_fifo
Freeswitch SVN
anthm at freeswitch.org
Mon Mar 24 13:09:29 EDT 2008
Author: anthm
Date: Mon Mar 24 13:09:29 2008
New Revision: 7952
Modified:
freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c
Log:
up
Modified: freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c (original)
+++ freeswitch/trunk/src/mod/applications/mod_fifo/mod_fifo.c Mon Mar 24 13:09:29 2008
@@ -337,7 +337,10 @@
int custom_pop = 0;
int pop_array[MAX_PRI] = { 0 };
char *pop_list[MAX_PRI] = { 0 };
-
+ const char *fifo_consumer_wrapup_sound = NULL;
+ const char *fifo_consumer_wrapup_key = NULL;
+ char buf[5] = "";
+
if (argc > 3) {
announce = argv[3];
}
@@ -508,6 +511,28 @@
if (nowait) {
done = 1;
}
+
+ fifo_consumer_wrapup_sound = switch_channel_get_variable(channel, "fifo_consumer_wrapup_sound");
+ fifo_consumer_wrapup_key = switch_channel_get_variable(channel, "fifo_consumer_wrapup_key");
+ memset(buf, 0, sizeof(buf));
+
+ if (!switch_strlen_zero(fifo_consumer_wrapup_sound)) {
+ args.buf = buf;
+ args.buflen = sizeof(buf);
+
+ memset(&args, 0, sizeof(args));
+ switch_ivr_play_file(session, NULL, fifo_consumer_wrapup_sound, &args);
+ }
+
+ if (!switch_strlen_zero(fifo_consumer_wrapup_key) && strcmp(buf, fifo_consumer_wrapup_key)) {
+ for(;;) {
+ char terminator = 0;
+ switch_ivr_collect_digits_count(session, buf, sizeof(buf)-1, 1, fifo_consumer_wrapup_key, &terminator, 0, 0, 0);
+ if (terminator == *fifo_consumer_wrapup_key) {
+ break;
+ }
+ }
+ }
}
switch_safe_free(uuid);
More information about the Freeswitch-svn
mailing list