DND Voicemail Behavior (Busy vs Unavailable)


I’m trying to solve a problem and it looks like there have been a few posts about this, but I haven’t been able to solve it from these posts. I’m running on FreePBX 10.13.66-3.

Basically, when a user goes into Do Not Disturb mode (on the server side), I want the calls to flow to their Unavailable Greeting (and their temporary greeting if it is set). Right now, they flow to the busy greeting. Here are my possible solutions:

  1. We don’t really use Busy Greetings, so I could change all of the users extensions to go to User>Unavailable Voicemail for busy calls. My only issue with this is that it doesn’t look like I can make this a global setting, so I will have to change this for every new extension I add in the future. Not an ideal solution

  2. Change the DND from “Busy” to “Unavailable” in the Dial Plan. I’m not sure how to do this and I am hesitant to make changes on that level. I’m not sure how safe editing config files is.

  3. We could try and move the DND signalling to the endpoints, but this hasn’t been tested and I think would end up being somewhat labor intensive.

Any help or ideas are very much appreciated. Listed below are links from other forum posts for basically the same issue.

DND status stays “busy”, will not switch to “Unavailable” voicemail
DND Behavior (Busy vs Unavailable)
DND Voicemail Behavior

Busy = On the phone and I think reject
Unavailable = Didn’t answer the phone.
DND will send Unavailable I believe if it is Asterisk
The phone may send either, depends on how the manufacturer set it up.

Thanks for the reply.

I could be wrong on this, but everything I tested shows its busy. I tried setting a phone in DND and calling it (it went to the busy voicemail) and it also shows as busy when putting in “Show Core Hints” into the Asterisk CLI.

The phone itself (in my case, a Grandstream 2170) can put out several different signals for DND, but that is only if it is done locally on the phone. I’m doing on the server side by pressing *76XXX.

DND should send Busy, since it fails immediately.

It should only send Unavailable if it fails after the ring-time is expired. When I set my phone to DND (and this is what I tell my customers), it means that I am here, but I am with another client and their time is just as important as yours.

At least, that’s the way that’s always made sense to me.

I’m unclear on the initial problem, though. To me, it sounds like we are using DND for something where FM/FM or CF might be more appropriate tools. This box has lots of tools in it - maybe there’s a better one to solve this problem?

Thanks for the reply.

I see what you’re saying. Yes, we are using DND for presence sensing as well. We have a few secretaries who take calls on the main line and transfer them to the available users. The users put their phones into DND at the end of the day to show when they are in or out. We have this setup because this is similar behavior to what their last phones did.

I know there are some presence sensing options and add-ons for FreePBX, but I think for most of the users, they like the simplicity of it being on their phones and not having to login to a panel or use their computer.

I don’t think DND was designed for this, but it almost works perfectly. Any thoughts?

I still don’t have a solution, so I’m bumping this to see if anyone else can weigh in.

This is actually part of the problem.

The design theory of the system says that “Do Not Disturb” means that the person is still there, but isn’t intended to be contact. When they are no longer available, the phone should be Call Forwarded or Find/Followed to Voice Mail.

I understand that it doesn’t work the way their old system worked, but that’s because where the old system had one tool, we have three.

If you want to program a tool/button for “GFTD”, that Call Forwards their phones to the specific voice mail that you want to use, you can (and IMHO should) do that. You can tie the phone to time conditions or any number of other cool features, but just using DND to make it happen seems to be the wrong approach.