Background announcement with Queue


unfortunately I couldn’t find a way to achieve the following with FreePBX 2.8.0.x:

The goal is to have an incomming call being routed to a multitude of phones, if no one answers within 10 Seconds, a “please hold the line while we try to ignore you” message should be played (while the phones are still ringing and a pick up should directly connect the caller with the callee).

Well, I thought this is a fairly standard requirement for a PBX …

… and thought this to be easy, but failed to implement it.

AFAIK, using a queue is the intended feature for such a purpose. But there, I can either use the “Join Announcement”, which is a) played immediately when the call comes in and b) the phones do NOT ring until the announcement is played to the end or then use “Periodic Announcements”, which do not work at all (unfortunately) and, if set to be played after 10 seconds, it would repeat every then seconds (which is in turn annoying)

Is there a way/feature/module/trick or whatever to implement this?

Any hint highly appreciated


As a comment, I use ring groups and find that callers tend to be more patient with music as opposed to ringing. Its just in our nature to hang up if it rings more than about 20-30 seconds. If your callers don’t have to hold long the ring is ok.

Hi tadpole

Thank you for this hint - indeed, this is an option …
I would then do

RGroup1 => Present “ringing” to the caller, timeout => RGroup2
RGroup2 => Custom MoH Class with a “tape” that playback the announcement and the music … might get a little bit boring if it loop’s, but yes, a feasible workaround … but it appears as I cant get everything at once … :wink:

I’ll post my initial question to the digium forum … I’m interested to know if Asterisk is capable to do so or not …

Thank you all for your support and hints


Try that and use MoH instead?

So, incoming call
RGroup1 (with MoH) --> RGroup2 (with MoH)

You can’t. Asterisk can’t play announcement inside the Dial command (as far as I know).


thank you for your swift answer!

I did how you proposed. It works very similar as the queues did.
What now happens is:

The first ring group “expires” after 10 seconds (all phones are rinning for 10 seconds while in this ring group), all phones stop ringing, the announcement is played to the caller, after the announcement is done, all phones start ringing again (infinitely)…

What I would like to avoid is that the phones stop ringing in between …

Thank you for enlightening me …


Create two Ring Groups and one Announcement, add all extensions to each Ring Group. On the first Ring Group set the second Ring Group as Destination if no answer and set Ring Time to 10 seconds.
On the second Ring Group add the previously created Announcement in selection Announcement, add the second Ring Group as Destination if no answer.

You’re all set