911 Routing Based On IP Address or User Group?


I’m still relatively new to FreePBX. I work at a school district with 30+ schools and a few other buildings. Please forgive me if there is an obvious answer to this, but I haven’t found much searching around.

With our current phone system (Alcatel), if someone calls 911 from School A, certain people from School A will get an email, phone call, and pop up saying someone called 911. Same with School B, C, etc.

My questions are:

  1. Is there a way to have this without needing to set up 30+ outbound emergency routes, with a different group of people to be emailed, paged, etc.?
  2. If not, is there a way to route calls based on the phone’s IP address or what user group the extension is (if I make a group for each building) so it will go through the proper building’s route, alerting the right people?

We are using FreePBX 16.0.19 / Asterisk 16.25.0

I would do with with a custom dialplan using the macro-dialout-trunk-predial-hook hook and checking if the uses an emergency route.

If true, then do the following:

  1. Determine the local IP address of the phone.
  2. Set the proper CID for the call. (For example, 192.168.10.xx=8881230001. 192.168.20.xx=8881230002)
  3. If for some reason we can’t match the IP address to any CID, then check if the call already has an emergency CID set. (useful for remote home user who you can simply set the emergency CID on the extension level)
  4. If no CID is found, set the “default CID” and trigger an email to IT support to check it out
  5. Set the proper email address(s) to be notified based on IP address or extension range
  6. MacroExit()

See some links:

I know with our (my company’s) provider module we allow management of 911 per extension, or route. Note depending on how your provider is handling it I would imagine you simply set your emergency caller id which is sent when dialing through an emergency route.

Thanks! I’m playing around with the first linked solution, getting closer! Running into some issues but will see if I can sort through them.

Feel free to post your dialplan and we’ll try to help you :slight_smile:

You could use the extension’s account code field to store the emergency notification email address and then use the predial hook to watch for 911 calls and use the email address in that field to generate notifications.

Thanks! I’m still familiarizing myself even with this community, so I’ll gather my files up and see about posting them here.

I did kind of get that working. I might stick with it based on IP address at this point though. I don’t like when it happens because it makes tracking harder, but occasionally a phone from one school will make its way to another school so that account code might not get updated. (Of course that’s mainly on me, I just have to take the time to make sure the account codes are set correctly and updated as needed)

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