Dial zero from voicemail to get operator


I have super searched the forums for a way to do this with a freePBX add-on with no success. This seems extremely odd to me, because being able to back out of a users voice mail to an operator seems like a standard thing people would like to do. So going in the face of every config file of FreePBX that says “don’t do that” I modified extensions.conf and voicemail.conf.
In voicemail.conf I uncommented
exitcontext = fromvm
operator = yes
and in extensions.conf I added to the bottom of the file
exten => o,1,BackGround(one-moment-please)
exten => o,n,Dial(SIP/100,30)
exten => o,n,VoiceMail(100,u)

It all works…however,

  1. Why is there no addon to do this, it seems easy enough?
  2. I would actually like it to goto our IVR and not an extension and the syntax “exten => o,1,Goto(ivr,s,1)” does not work. How would one go about this?


create a Misc Application and point it to the IVR so you have a number to dial.

Once you do that, just put that number in either the general settings Operator Extension field or in the individual field for that user.

Thanks that worked. I have removed all of my other setting except for uncommenting the operator=yes

It goes to the operator now, I would still however like to be able to shoot it to the IVR, is that possible? Maybe a modification on macro-vm?


first off, if you are going to do something custom, add it to extensions_custom.conf so you do not have your changes trampled on.

for voicemial.conf, you can edit that directly or use the vm_general.inc file which is included.

If you have a look at extensions_additional.conf you will see the macro-vm which has the ‘o’ extension for braking out. There is a default ‘o’ destination which is set in the General Settings tab. Each extension can override that in the VmX settings (though you don’t have to actually enable VmX, as the operator override will still be valid.

The issue may simply be that you did not have the:


in the voicemail.conf file (or vm_general.inc) and you should try just setting that first. If you find you also require the “exitcontext” settings then you may want to file a ticket on that and indicate what version of Asterisk you are using as it may be that was not necessary before. (And if it is, trying setting it to macro-vm). (According to some documentation though, it claims it will use the last context used if not explicitly set).

That does not seem to resolve my problem. I have put all config files back to how I had them prior to my modification and enabled the VMX Locator. No matter what settings I have used, unavailable and busy, checked and unchecked and press 0 set to operator or an extension. To my surprise the behavior remains unchanged. You cant press anything during the voicemail, and after the voicemail if you press # it says “choose” then drops the call. As I said earlier my modification worked, I would just like a less dirty way to do it and be able to send it to the IVR.

You can do this right from FreePBX it’s not hard at all… In FreePBX Admin Portal, click the users extension you want. Scroll to the bottom where it says VMX Locator. Make sure it’s on enabled, then it will say Press 0 and you can have it checked Go to Operator, or what I have is “500” which is my main Sales Queue. So if someone zeros out on my voicemail it goes to our queue.

I was trying to just disable press 0 or even remove the prompt all together after a VM is recorded. I could not find how and decided to put the call back in Queue if the person presses 0.

Even with Standard Voicemail prompts not checked the prompt plays. How can I stop the prompt after recording to not play?