From debe5daebb7bbeecb17a3067ade43d3ddcc7cef8 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Mon, 30 Mar 2009 16:48:44 +0000 Subject: [PATCH] add read_terminator_used var git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@12840 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/include/switch_types.h | 1 + src/switch_ivr_play_say.c | 9 +++++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/src/include/switch_types.h b/src/include/switch_types.h index 890ba56831..9d9ad16f58 100644 --- a/src/include/switch_types.h +++ b/src/include/switch_types.h @@ -110,6 +110,7 @@ SWITCH_BEGIN_EXTERN_C #define SWITCH_PATH_SEPARATOR "/" #endif #define SWITCH_URL_SEPARATOR "://" +#define SWITCH_READ_TERMINATOR_USED_VARIABLE "read_terminator_used" #define SWITCH_SEND_SILENCE_WHEN_IDLE_VARIABLE "send_silence_when_idle" #define SWITCH_CURRENT_APPLICATION_VARIABLE "current_application" #define SWITCH_CURRENT_APPLICATION_DATA_VARIABLE "current_application_data" diff --git a/src/switch_ivr_play_say.c b/src/switch_ivr_play_say.c index e4d26d1676..1d2c57107f 100644 --- a/src/switch_ivr_play_say.c +++ b/src/switch_ivr_play_say.c @@ -1446,8 +1446,8 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_read(switch_core_session_t *session, switch_channel_t *channel; switch_input_args_t args = { 0 }; switch_status_t status = SWITCH_STATUS_SUCCESS; - char terminator; size_t len = 0; + char tb[2] = ""; switch_assert(session); @@ -1488,7 +1488,12 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_read(switch_core_session_t *session, if ((min_digits && len < min_digits) || len < max_digits) { args.buf = digit_buffer + len; args.buflen = (uint32_t) (digit_buffer_length - len); - status = switch_ivr_collect_digits_count(session, digit_buffer, digit_buffer_length, max_digits, valid_terminators, &terminator, timeout, 0, 0); + status = switch_ivr_collect_digits_count(session, digit_buffer, digit_buffer_length, max_digits, valid_terminators, &tb[0], timeout, 0, 0); + } + + + if (tb[0]) { + switch_channel_set_variable(channel, SWITCH_READ_TERMINATOR_USED_VARIABLE, tb); } len = strlen(digit_buffer);