mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-03-07 10:48:06 +00:00
un revert stuff from r7958
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@7960 d0543943-73ff-0310-b7d9-9358b9ac24b2
This commit is contained in:
parent
ec1cf1dc45
commit
63b7f1cac9
@ -337,7 +337,10 @@ SWITCH_STANDARD_APP(fifo_function)
|
|||||||
int custom_pop = 0;
|
int custom_pop = 0;
|
||||||
int pop_array[MAX_PRI] = { 0 };
|
int pop_array[MAX_PRI] = { 0 };
|
||||||
char *pop_list[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) {
|
if (argc > 3) {
|
||||||
announce = argv[3];
|
announce = argv[3];
|
||||||
}
|
}
|
||||||
@ -388,6 +391,8 @@ SWITCH_STANDARD_APP(fifo_function)
|
|||||||
|
|
||||||
while(switch_channel_ready(channel)) {
|
while(switch_channel_ready(channel)) {
|
||||||
int x = 0 ;
|
int x = 0 ;
|
||||||
|
pop = NULL;
|
||||||
|
|
||||||
if (moh) {
|
if (moh) {
|
||||||
args.read_frame_callback = read_frame_callback;
|
args.read_frame_callback = read_frame_callback;
|
||||||
args.user_data = node;
|
args.user_data = node;
|
||||||
@ -423,6 +428,7 @@ SWITCH_STANDARD_APP(fifo_function)
|
|||||||
}
|
}
|
||||||
|
|
||||||
uuid = (char *) pop;
|
uuid = (char *) pop;
|
||||||
|
pop = NULL;
|
||||||
|
|
||||||
if ((other_session = switch_core_session_locate(uuid))) {
|
if ((other_session = switch_core_session_locate(uuid))) {
|
||||||
switch_channel_t *other_channel = switch_core_session_get_channel(other_session);
|
switch_channel_t *other_channel = switch_core_session_get_channel(other_session);
|
||||||
@ -505,7 +511,29 @@ SWITCH_STANDARD_APP(fifo_function)
|
|||||||
if (nowait) {
|
if (nowait) {
|
||||||
done = 1;
|
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);
|
switch_safe_free(uuid);
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user