Best way to only allow internal calls, on a schedule / DND Override

I work for a school system, and we need our phones to not allow general calls to ring audibly during instruction. Ideally, I’d really like this to be within a set timeframe, but based on my beggar status, I will refrain from being a chooser as well. But at the same time, we need to be able to have the phone ring when someone in the building needs to call the station, say from the front office for an emergency.

DND seems like the obvious choice to keep the phone quiet during the school day, but I’ve not found a good way to get around it when I’m sure I want to ring into the classroom.

Our old phone system had a “priority call” feature access code that would make the recipient station ring at full volume and bypass voicemail as well.

I’ve found previous threads where Lorne mentioned that you can build a dialplan and Originate the call from the station with DND enabled, but unfortunately this doesn’t seem to work for me on FreePBX 16.0.40 with Asterisk 16.30.0. I tried it through both the phone’s DND(which I was quite sure would not work), and through FreePBX’s DND. I’m likely doing it incorrectly, but the cli command asterisk -rx "channel originate local/1234@from-internal extension 4321@from-internal" did not ring at the station with DND on, and the logs show the station acted as if it was “busy”.

I might be approaching it in the wrong way as well, so any creative ideas for this would be greatly appreciated! Thanks!

Why don’t you just setup Time Groups and use Time Conditions on incoming external calls and send them to different destinations (like a VM) when you don’t want external calls to ring internal extensions?

External call flow through these wouldn’t affect direct extension to extension calls.

Why don’t you just setup Time Groups and use Time Conditions on incoming external calls and send them to different destinations (like a VM) when you don’t want external calls to ring internal extensions?

This sounds like it’s very close to what I need, my hope is that a phone could have all external calls be sent to that phone’s voicemail, but allow internal calls. In my searches I haven’t seen how to do that, but I assume it’s possible?

Correct. You can specify a voice mail desktop as the destination when you don’t want the internal phones to ring.

Thanks for this!

I’ve also come across this thread with LOTS of good stuff that I’ll be playing with:

The only bug that I haven’t had time to work out yet is. If I enabled the “Dial by Name” directory on the IVR. It will let the call through regardless of hours. If I just have Direct Dial enabled (with no directory) it will send the call to VM during school hours.

1 Like

I work for a school district too. We haven’t switched over yet to FreePBX, but we’re gearing up to head that way.

In my time of playing around with FreePBX now, I have this functional by using the config editor. Not sure if it’s the way to do it, but it works - I have a custom from-pstn context and that’s where I start my block to check if it’s school hours, then send the caller to voicemail or let it through. That allows other in-district phones to call them with no issue of being sent to voicemail.

I also utilize the account code field, putting a four-digit number in there (the first three digits correspond to the school, the last digit is a 1 to ignore the schedule (if a teacher wants to get calls during the day from parents), or 0 to force the school hours check).

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