[Freeswitch-svn] [commit] r6181 - in freeswitch/trunk/src: . mod/applications/mod_voicemail
Freeswitch SVN
anthm at freeswitch.org
Wed Nov 7 18:37:22 EST 2007
Author: anthm
Date: Wed Nov 7 18:37:22 2007
New Revision: 6181
Modified:
freeswitch/trunk/src/mod/applications/mod_voicemail/mod_voicemail.c
freeswitch/trunk/src/switch_ivr_play_say.c
Log:
fix phrase stuff
Modified: freeswitch/trunk/src/mod/applications/mod_voicemail/mod_voicemail.c
==============================================================================
--- freeswitch/trunk/src/mod/applications/mod_voicemail/mod_voicemail.c (original)
+++ freeswitch/trunk/src/mod/applications/mod_voicemail/mod_voicemail.c Wed Nov 7 18:37:22 2007
@@ -1160,10 +1160,13 @@
{
int informed = 0;
char msg_count[80] = "";
+
switch_channel_set_variable(channel, "voicemail_current_folder", myfolder);
message_count(profile, myid, domain_name, myfolder, &total_new_messages, &total_saved_messages,
&total_new_urgent_messages, &total_saved_urgent_messages);
+
+
if (total_new_urgent_messages > 0) {
snprintf(msg_count, sizeof(msg_count), "%d:urgent-new", total_new_urgent_messages);
TRY_CODE(switch_ivr_phrase_macro(session, VM_MESSAGE_COUNT_MACRO, msg_count, NULL, NULL));
@@ -1416,7 +1419,8 @@
char *xtra;
int ok = 1;
caller_profile = switch_channel_get_caller_profile(channel);
- xtra = switch_mprintf("mailbox=%s&destination_number=%s&caller_id_number=%s", myid,caller_profile->destination_number,caller_profile->caller_id_number);
+ xtra = switch_mprintf("mailbox=%s&destination_number=%s&caller_id_number=%s",
+ myid,caller_profile->destination_number,caller_profile->caller_id_number);
assert(xtra);
Modified: freeswitch/trunk/src/switch_ivr_play_say.c
==============================================================================
--- freeswitch/trunk/src/switch_ivr_play_say.c (original)
+++ freeswitch/trunk/src/switch_ivr_play_say.c Wed Nov 7 18:37:22 2007
@@ -100,6 +100,7 @@
const char *module_name = NULL, *chan_lang = NULL;
switch_channel_t *channel;
uint8_t done = 0;
+ int matches = 0;
channel = switch_core_session_get_channel(session);
assert(channel != NULL);
@@ -214,6 +215,8 @@
char *expanded = NULL;
switch_xml_t match = NULL;
+ status = SWITCH_STATUS_SUCCESS;
+
if ((proceed = switch_regex_perform(data, pattern, &re, ovector, sizeof(ovector) / sizeof(ovector[0])))) {
match = switch_xml_child(input, "match");
} else {
@@ -221,7 +224,7 @@
}
if (match) {
- status = SWITCH_STATUS_SUCCESS;
+ matches++;
for (action = switch_xml_child(match, "action"); action && status == SWITCH_STATUS_SUCCESS; action = action->next) {
char *adata = (char *) switch_xml_attr_soft(action, "data");
char *func = (char *) switch_xml_attr_soft(action, "function");
@@ -302,12 +305,17 @@
}
done:
+ if (!matches) {
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_WARNING, "macro [%s] did not match any patterns\n", macro_name);
+ }
+
if (old_sound_prefix) {
switch_channel_set_variable(channel, "sound_prefix", old_sound_prefix);
}
if (xml) {
switch_xml_free(xml);
}
+
return status;
}
More information about the Freeswitch-svn
mailing list