Index: apps/app_queue.c =================================================================== --- apps/app_queue.c (revision 48237) +++ apps/app_queue.c (working copy) @@ -331,6 +331,7 @@ unsigned int wrapped:1; unsigned int timeoutrestart:1; unsigned int announceholdtime:2; + unsigned int announceskippos:1; unsigned int strategy:3; unsigned int maskmemberstatus:1; unsigned int realtime:1; @@ -608,6 +609,7 @@ q->maxlen = 0; q->announcefrequency = 0; q->announceholdtime = 0; + q->announceskippos = 0; q->roundingseconds = 0; /* Default - don't announce seconds */ q->servicelevel = 0; q->moh[0] = '\0'; @@ -788,7 +790,9 @@ q->announceholdtime = ANNOUNCEHOLDTIME_ALWAYS; else q->announceholdtime = 0; - } else if (!strcasecmp(param, "periodic-announce")) { + } else if (!strcasecmp(param, "announce-skip-position")) { + q->announceskippos = ast_true(val); + } else if (!strcasecmp(param, "periodic-announce")) { ast_copy_string(q->sound_periodicannounce, val, sizeof(q->sound_periodicannounce)); } else if (!strcasecmp(param, "periodic-announce-frequency")) { q->periodicannouncefrequency = atoi(val); @@ -1239,12 +1243,15 @@ ast_moh_stop(qe->chan); /* Say we're next, if we are */ if (qe->pos == 1) { + if(qe->parent->announceskippos) + goto playout; + res = play_file(qe->chan, qe->parent->sound_next); if (res && valid_exit(qe, res)) goto playout; else goto posout; - } else { + } else if(!qe->parent->announceskippos) { res = play_file(qe->chan, qe->parent->sound_thereare); if (res && valid_exit(qe, res)) goto playout; @@ -1305,11 +1312,13 @@ if (res && valid_exit(qe, res)) goto playout; } + + } else + if(qe->parent->announceskippos) + goto playout; - } - posout: - if (option_verbose > 2) + if (!qe->parent->announceskippos && option_verbose > 2) ast_verbose(VERBOSE_PREFIX_3 "Told %s in %s their queue position (which was %d)\n", qe->chan->name, qe->parent->name, qe->pos); res = play_file(qe->chan, qe->parent->sound_thanks); Index: configs/queues.conf.sample =================================================================== --- configs/queues.conf.sample (revision 47972) +++ configs/queues.conf.sample (working copy) @@ -92,8 +92,13 @@ ; or "less than 2 minutes" when appropriate. ; ;announce-holdtime = yes|no|once - ; +; +; Skip position announce (say only the estimated hold time, if configured above) +; +;announce-skip-position = no +; +; ; What's the rounding time for the seconds? ; If this is non-zero, then we announce the seconds as well as the minutes ; rounded to this value.