From b18a48b43b981b464aa3fe128b121a35140f7053 Mon Sep 17 00:00:00 2001 From: Brian West Date: Mon, 31 Aug 2009 20:38:23 +0000 Subject: [PATCH] clarify usage of unimrcp git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@14706 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c | 10 ++++++++-- src/switch_core_asr.c | 4 ++-- 2 files changed, 10 insertions(+), 4 deletions(-) diff --git a/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c b/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c index 17bf4d9166..c3c6e705c8 100644 --- a/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c +++ b/src/mod/asr_tts/mod_unimrcp/mod_unimrcp.c @@ -2507,7 +2507,7 @@ static switch_status_t recog_asr_open(switch_asr_handle_t *ah, const char *codec speech_channel_t *schannel = NULL; int speech_channel_number = get_next_speech_channel_number(); char name[200] = { 0 }; - const char *profile_name; + const char *profile_name = NULL; profile_t *profile = NULL; recognizer_data_t *r = NULL; @@ -2532,8 +2532,14 @@ static switch_status_t recog_asr_open(switch_asr_handle_t *ah, const char *codec switch_core_hash_init(&r->grammars, ah->memory_pool); /* try to open an MRCP channel */ - profile_name = switch_strlen_zero(dest) ? globals.unimrcp_default_recog_profile : dest; + if (!(profile_name = dest)) { + if (!(profile_name = ah->param)) { + profile_name = globals.unimrcp_default_recog_profile; + } + } + profile = (profile_t *)switch_core_hash_find(globals.profiles, profile_name); + if (!profile) { switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_ERROR, "(%s) Can't find profile, %s\n", name, profile_name); status = SWITCH_STATUS_FALSE; diff --git a/src/switch_core_asr.c b/src/switch_core_asr.c index 4f851c6fd5..75e0ba1e68 100644 --- a/src/switch_core_asr.c +++ b/src/switch_core_asr.c @@ -44,9 +44,9 @@ SWITCH_DECLARE(switch_status_t) switch_core_asr_open(switch_asr_handle_t *ah, char buf[256] = ""; char *param = NULL; - if (strchr(module_name, '@')) { + if (strchr(module_name, ':')) { switch_set_string(buf, module_name); - if ((param = strchr(buf, '@'))) { + if ((param = strchr(buf, ':'))) { *param++ = '\0'; module_name = buf; }