diff --git a/apps/app_queue.c b/apps/app_queue.c index 029e6bfb5b..f5550bb7d7 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -238,7 +238,13 @@ URL will be sent to the called party if the channel supports it. - + + + Announcement file(s) to play to agent before bridging call, overriding the announcement(s) + configured in queues.conf, if any. + + + Will cause the queue to fail out after a specified number of seconds, checked between each queues.conf timeout and @@ -6956,8 +6962,12 @@ static int try_calling(struct queue_ent *qe, struct ast_flags opts, char **opt_a res2 = ast_safe_sleep(peer, qe->parent->memberdelay * 1000); } if (!res2 && announce) { - if (play_file(peer, announce) < 0) { - ast_log(LOG_ERROR, "play_file failed for '%s' on %s\n", announce, ast_channel_name(peer)); + char *front; + char *announcefiles = ast_strdupa(announce); + while ((front = strsep(&announcefiles, "&"))) { + if (play_file(peer, front) < 0) { + ast_log(LOG_ERROR, "play_file failed for '%s' on %s\n", front, ast_channel_name(peer)); + } } } if (!res2 && qe->parent->reportholdtime) { diff --git a/doc/CHANGES-staging/app_queue.txt b/doc/CHANGES-staging/app_queue.txt new file mode 100644 index 0000000000..5d677b56b9 --- /dev/null +++ b/doc/CHANGES-staging/app_queue.txt @@ -0,0 +1,4 @@ +Subject: app_queue.c + +Allow multiple files to be streamed for agent announcement. +