Transfer to Voicemail using BLF key+ DTMF

currently we have a DTMF prefix ##* and type in the extension in order to go to voicemail. This works fine. However, I need to hit the prefix key then the BLF to make it easier on the receptionist. If you do this, the phone rings and doesn’t actually go to voicemail. How can I use the BLF key and use it to be able to transfer directly to VM without manually typing in the extension?

Depemds on what brand of phones. Some you can not and others you can.

These are yealink. How would this be done?

You will have to do this with custom dialplan as there are no hints generated for direct voicemail on an extension. The BLF buttons will either initiate an Attended or Blind transfer to the BLF destination when it is pressed during an active call. To have a BLF that would send calls directly to 100’s VM you would need one for *100 (if you haven’t changed the direct VM feature code) so that the BLF will dial that immediately.

include => direct-vm-hints

exten => *100,hint,,,
exten => *101,hint,,,

Keep in mind now that you will end up with a BLF for 100 to monitor the state and do your other direct dial, etc of Ext 100 and you will have a BLF for *100 just to send calls to the VM directly. You’ll have to figure out your layout to make it user friendly.

I am not sure yealink supports thar. You would need to ask them or maybe someone here knows how to do it. We added special handling in Sangoma phones for this.

You are not reading what the OP asked for. He does not want a BLF button that always goes to VM always. He has a speedial setup to do the transfer and prefix with a *. What he wants is after pressing that transfer to VM button to be able to press the BLF to pick which extension to transfer the caller to and have it go right to VM.

I was editing my post to include that as well with some questions about it. It’s going to require a macro on the phone for this. Speed Dial isn’t going to cut it. Why? Here’s Why!

The ## is an In-Call feature that does a Blind Transfer it wants ##{Dest} and then a # to make it happen. It’s not going to wait for input so having a soft key with ##* and pressing it during the call will make the call transfer to * and that’s just not going to work. So this is going to require a Macro to be fired so the soft key will do ##* and wait for input. Now what would have to be tested on this as I haven’t tested the input being a BLF key so that’s going to be the interesting part.

If the phone is going to append ##* and wait for input it might not accept the BLF (to speed dial) as input since it’s not DTMF based. In fact it might ignore what the soft key did and just call the extensions directly. More importantly it might not accept the rest of the macro that adds the # at the end.

@sentinelace Let me look at some of my Yealinks and see what the macro setup is for this. I have offices that wanted this so they could hit a “Xfter to VM” softkey and it would present them with “Exten:” and wait for the extension to be entered so they could hit the “Complete/Finish/Send” button to send it.

Sangoma phones already do this so it for sure is doable in the phone itself without any macros. Asterisk waits for input after the ##*. You just need a smart phone that knows to send the BLF entry as DTMF down the active channel and not open a new channel or call on the phone.

That’s great, it is a nice feature to have. However, since the OP is using Yealinks what the S-Series can do is irrelevant. In regards to the Yealinks, this can be done by setting the value of a soft key with one macro command.

@sentinelace You can go into the EPM and in the Yealink template select the model and go to the Horizontal Softkeys and do the following:

  1. Set the Soft Key Type to Speeddial
  2. Make the Label something like “Xfer to VM”
  3. In the Value setting add *$PVM ExtenC3&N$$Trefer$

I think that will cover it for you without the need to define any EDK settings/prompts in the template, which would require editing the basefile at that point. You can replace the 3 in C3 the length of the extensions.

Expected Result: User presses softkey during call, they are prompted with a pop-up that says “VM Exten” they enter the extension and it transfers the call as *{exten} which will send it straight to voicemail.

Thing to test: When the pop-up presents itself, hit the BLF of the user you want to go to VM. In theory this should make the phone want to send that extension as the digits.

Let me know. I don’t have a Yealink in front of me to test at the moment. I need to re-order some.

I am sorry I thought you were saying he would need a macro in asterisk dialplan. That is why I was confused.

Oh yeah, no that would be crazy for sure. Yeah Polycoms, Yealinks and some others call them macro’s so i can see the cconfusion

can you explain how the macro works? I still need to use that BLF as a monitor and regular transfers. Can you send me a screenshot?

It’s not a BLF, it’s a Soft Key. The macro creates a pop-up that says “VM Exten” and it expects a numeric input with 3 digits (based on the example) so if you enter 100 the soft key will trigger *100 to be dialed as an REFER so it will take your current call and transfer it.

What I said to test was pressing the Xfter to VM soft key and when it prompts for the “VM Exten” you press the BLF of the extension you want to transfer to and see if that is excepted.

cool. How do I program the softkey?

Tom already explained that… If you don’t have EPM you can program the softkeys via the phone gui.


Sweet. I will test this out today.

I am testing on a T29. Does it have to be Horizontal key? I really can’t lose these options

You can try to program a line key as a speeddial and put it there.

Speed dial isn’t an option for some reason