diff --git a/apps/app_queue.c b/apps/app_queue.c index 95eb05b0eeeb1b9421550129ac330c49b4e8dc42..9bd05379fc46fe721b644bb3879dd19079c19306 100644 --- a/apps/app_queue.c +++ b/apps/app_queue.c @@ -4124,9 +4124,8 @@ static int valid_exit(struct queue_ent *qe, char digit) static int say_position(struct queue_ent *qe, int ringing) { - int res = 0, announceposition = 0; + int res = 0, say_thanks = 0; long avgholdmins, avgholdsecs; - int say_thanks = 1; time_t now; /* Let minannouncefrequency seconds pass between the start of each position announcement */ @@ -4155,11 +4154,7 @@ static int say_position(struct queue_ent *qe, int ringing) qe->parent->announceposition == ANNOUNCEPOSITION_MORE_THAN || (qe->parent->announceposition == ANNOUNCEPOSITION_LIMIT && qe->pos <= qe->parent->announcepositionlimit)) { - announceposition = 1; - } - - - if (announceposition == 1) { + say_thanks = 1; /* Say we're next, if we are */ if (qe->pos == 1) { res = play_file(qe->chan, qe->parent->sound_next); @@ -4203,6 +4198,7 @@ static int say_position(struct queue_ent *qe, int ringing) if ((avgholdmins+avgholdsecs) > 0 && qe->parent->announceholdtime && ((qe->parent->announceholdtime == ANNOUNCEHOLDTIME_ONCE && !qe->last_pos) || !(qe->parent->announceholdtime == ANNOUNCEHOLDTIME_ONCE))) { + say_thanks = 1; res = play_file(qe->chan, qe->parent->sound_holdtime); if (res) { goto playout; @@ -4237,8 +4233,6 @@ static int say_position(struct queue_ent *qe, int ringing) goto playout; } } - } else if (qe->parent->announceholdtime && !qe->parent->announceposition) { - say_thanks = 0; } posout: diff --git a/doc/CHANGES-staging/app_queue_say_thanks.txt b/doc/CHANGES-staging/app_queue_say_thanks.txt new file mode 100644 index 0000000000000000000000000000000000000000..7bf7b7b4206af28340f55d557bcc14bf3787de04 --- /dev/null +++ b/doc/CHANGES-staging/app_queue_say_thanks.txt @@ -0,0 +1,4 @@ +Subject: app_queues + +Don't play sound_thanks if there is no leading hold_time message +When the only announcement is hold time, and there is no hold time (0 min, 0 sec), asterisk will say "thank you for your patience"