Play a recorded message and allow user to leave message

This is probably a stupid question but I don’t know the proper words to use to do a search and I’ve searched for about 10 minutes.

I need to setup a DID to go to an extension. I don’t want that DID to ring anywhere in the house. Just go to the extension, play a recorded message (which I want to upload to the freepbx server) and allow the user to leave a message. I want to be notified (either by SMS or email) that someone has left a message and I can connect in to retrieve it.

This should be a seemingly simple thing to do since it seems like nothing more than an extension that goes straight to a voicemail but the vm greeting is 15 minutes long but I can’t find the right combination of search terms.



Make an announcement that goes to a VM when it is done playing.

Good morning, Steve.

I’m not sure what you mean by “the vm greeting is 15 minutes long” but don’t you control that?

Is your problem that you want the call to go straight to voicemail with NO voicemail greeting, i.e. bypass the voicemail greeting you have programmed in? Can’t help you with that, I’m afraid…

If you want an extension to be voicemail-only, i.e. all calls go directly to voicemail with the normal voicemail greeting, one way to do it (among many, I’m sure) is to set that extension with some strange and convoluted password (so that no one will connect a phone instrument to it by mistake) and then don’t connect any phone instrument to it. Then the default “Optional Destinations: Not Reachable” rule will send the call to voicemail.

If that isn’t what you want, please try again…

Eric /

So here’s my deal… I have a business opportunity that I’m placing an ad in a local newspaper for. I want them to call a DID and I want that DID to route to a particular extension (I only want it to route to an extension so I can dial that extension internally to hear the recording myself for testing). When they are connected, they will hear the business presentation (~15 minutes) and then be told that if they want more information, leave their name and number after the beep and someone will get back to them. When they leave their info, I want an email sent to me telling me someone has left info. The last part seems to be pretty cut and dry voicemail functionality. My issue now seems to be connecting the extension to the announcement. I know I could do it via .conf files but I’m trying to use the freepbx GUI to do it.

Send the inbound call to an announcement, sent the announcement to a voicemail (no announcement) add email notification to that voicemail account, and add a misc application so you can hear what you recorded, it’s all there in the gui, you just need to explore all of it.


Still seems to me like all you have to do is direct the inbound call to an extension:
Connectivity->Inbound Routes->(select route)->Set Destination
…then don’t connect a telephone instrument to that extension, and when the user calls, the “Optional Destinations: Not Reachable” rule will kick in and send the caller to a voicemail greeting that’s as long as you want it to be.

You can use a “virtual extension” for this:
Applications->Extensions->Add Extension, then select “None (virtual exten)” from the Device pulldown menu.

Am I missing something?

You aren’t going to use this for robo-calling, are you?

But how do I connect that virtual extension to the destination? I want to pick up my office (extension 200) and dial extension 800 and hear the recorded message.

And no, no robo-calling… just want a DID that I can publish in the newspaper and have people call me for information.

As I said and Scott previously suggested . . .add a misc application so you can hear what you recorded.

in your case the “feature code” would be 800 the destination would be the announcement you previously setup and the description might well be “I wish I had RTFM”

You could of course just call your DID directly and save that hard work.


Not to suggest anything counter to what Dicko and Scott said, people who no doubt have more knowledge about this stuff in their little finger than I have in my whole head, but to answer your question…

SLB>> But how do I connect that virtual
SLB>> extension to the destination?

Applications->Extensions->Add an Extension.
Device = None (virtual exten).
User Extension = 800
Voicemail Status = Enabled
Voicemail Password = NNNNN
Optional Destinations: No Answer, Busy, Not Reachable: all at their defaults “Voicemail if Enabled”

Connectivity->Inbound Routes->(Select your inbound route)
Set Destination = Extensions: 800

Then anyone who dials 800, either from inside or outside, gets whatever arbitrarily-long voicemail greeting you care to record for it, at the end of which the caller can leave a message.

I’m sorry if I’m telling you stuff you already know but maybe I still don’t fully understand the question.

Eric /

I’d suggest the announcement -->> voicemail route. Doing it this way allows for easy upload of messages through the system recordings interface.

This is really basic stuff. Nothing mysterious here, but I’ll give a step-by-step magic formula.

  1. Create a virtual extension enabling voicemail.
  2. Upload your 15 minute discourse to system recordings making sure it is in the right format.
  3. Create an announcement using the system recording.
  4. Point destination of announcement to the voicemail of the above created extension.
  5. Create a Misc. App Pointing to the Discourse Announcement.


Is there an advantage to doing the announement->voicemail route rather than just going straight to voicemail and letting the voicemail greeting message be the announcement?

It’s really a pain to upload a voicemail greeting. He’s talking about 15 minutes. There’s really no way to directly upload a voicemail greeting.