Extension ringing while Music on hold and announcement

Hi all.
I have created queues for incoming calls.
When a call comes, I play an annoucement, then I play music during 30 sec then I play another announcement and again music during 30 sec. If extensions are still busy then I play an announcement to tell caller to call later.

During this process, my extension is ringing during MoH and not during annoucements.

This result in my phone 4 calls logged (1 for each announcement and 1 for each MoH).
I also can see that in CDR logs.

How can I do the setting so that I get my extension always ringing while Moh and annoucement so I can see only 1 incoming call on the extension and 1 in the CDR log ?

Please explain using the GUI of Freepbx.


The queue should be handling all of the “intra-call” stuff. You shouldn’t be popping out to an announcement and then back into the queue.

See this. - If you are using a IVR Breakout Menu etc.

Hi !

Does this means that I can’t use chained queues to play announcement then MoH then announcement then MoH again ?

As you probably know, Asterisk is a “back to back user agent”. This means that your calls from the outside world are being handled by Asterisk and the calls to your extensions are being handled by Asterisk. The call is always terminated in the PBX, and the interaction with the extensions is external to that call. Hence, when you terminate the call to go to the Announcement, the call to the extension is terminated, and when you come back to the queue, and a new call from the PBX to the extension is initiated.

So, no, you certainly can use chained queues, but you are going to get four calls logged, since each segment of the call is a new call from the PBX to the extension.

Thanks, that’s clear now.
What would be the best settings for incoming calls to play one annoucement, music, another annoucement, music, etc till someone can pick-up the call, and get only 1 incomming call in logs ?

The link from @PitzKey would be a good start.

The trick is to set up your queue with the intermittent announcements and use music snippets that are “the right length”. There’s already an announcement link at the front of the queue, so adding additional queue messages while in the queue would be simple enough.

The trick to avoiding the multiple call instances is to stay within the queue module. There are LOTS of options in the queue module that give you many different options when presenting information to your callers.

Now, in addition to this, you can invoke the advanced queue features and give your customers lots of other ways to interact (call-backs, voicemail, etc.) and still not have to break out of the queue (and start the call structure all over again).

1 Like

Thanks for theses details.
It will be hard for a newbee like me to create someting nice mixing announcements and music.
It’s a pain that there is no way to create a loop with a message, a music, a counter and/or a delay, and the possbility to connect to another loop without creating a log entry…
Another idea could be the possibility in log output to merge all internal treatment for an incoming call to only one entry with the sum of the time duration.

Anyway, thanks you so much for wasting time to help / explain to me how it works.


There are already position enunciators in the queue, so you can turn those on and make it work that way.

Also, creating “on hold” music that is (say) 60 seconds of music followed by a static announcement, followed by music to round out your “enunciator time” is really child’s play these days. I don’t mean that hyperbolically either, my 9-year-old grand-daughter is mixing her own music on her phone… :slight_smile:

Set your position enunciator to once every 180 seconds, and make a series of four or five songs with different announcements and music that are all about 3 minutes long and you’re golden. Since the custom announcement part will change from implementation to implementation, you’d have to do it yourself anyway (or hire someone to record it for you). The system will randomize (I think) which message gets played first and will follow through the list of your music and announcements through the MOH process.

For the audio part of this, you could contact a local radio station or disco and find out who they’d recommend for professional quality sound files.

Another way to do this that I’ve been playing around with is using something like ‘icecast’ for your music and announcements. There are lots of audio “station managers” out there that can manage this highly individualized set of processes, and connecting the MOH incoming to an audio stream is not new (we’ve been doing it since the start of Asterisk).

I’m not sure whose time you think I’m wasting, but it’s actually a good question. The fact that the system doesn’t work the way you expected is a combination of skewed expectations and the history of the system itself. It’s just a case where, by explaining what the systems does, I might be able to help you solve your problem and help the next guy that has the same similar frame of reference.

This topic was automatically closed 365 days after the last reply. New replies are no longer allowed.