How to provision enterprise emergency notifications in the 911 Dashboard

Follow

Jason Bogart

Updated

When a 911 call is placed from within an enterprise, like a corporate campus, college or university, certain individuals need to be aware as the emergency or situation is occurring so they can react quickly and assist first responders. Recipients of notifications can include the front desk reception area, security teams, or facility managers. These individuals need to be notified in a variety of ways, including email, text (SMS), IVR call, and ‘HTTP Webhook’. The ‘Webhook’ method simply provides the 911 call notification via HTTP, allowing customers to integrate with a variety of applications they specify.

Required elements of the notification are:

  • Time of call 
  • Telephone number that originated the call 
  • Subscriber name
  • Address on file (including address line 2, if populated)

The key driver of this is the FCC mandate known as Kari’s Law that was signed into law on February 16, 2018. Kari’s Law applies to multi-line telephone systems (MLTS) “manufactured, imported, offered for first sale or lease, first sold or leased, or installed” after the compliance date of February 16, 2020. It requires: 

  • Elimination of a prefix digit such as an “8” or “9” when calling 911.
  • Notification of designated personnel when a 911 call is placed. This could include a security team or front desk attendant.

Logging into the 911 Dashboard

Image_1.png

Adding a notification contact

  1. From the target account, click "Emergency" and then "Notifications". 
  2. In the "New Notification Recipient" area, input a unique "Notification ID" and "Recipient", and select “Notification Type”. The drop-down options are:
    • Email
    • HTTP (see HTTP Callback below)
    • SMS (the Caller ID will be 877-547-5146)
    • Voice (the Caller ID will be 877-579-3712)
  3. Click "Save"

Image_2.png

Note:

  • Limits to the notification recipient ID include: "The ID can only contain the following: "letters, numbers, and the characters: , . - @ and _".
  • SMS notifications must be submitted in 11-digit format. Example: 19195557777.
  • HTTP requires Username and Password, and “Recipient” is the URL . 

Notification HTTP callback

Along with SMS, voice, and email notifications, you can tell Bandwidth to send an HTTP message to an HTTP service you provide. One of the notification types is HTTP. The HTTP notification type requires three pieces of information:

  • Recipient: This is a URL that the message will be sent to
  • Username: Username for HTTP basic authentication
  • Password: Password for HTTP basic authentication

When one of your subscribers calls 911 or 933, and they have an HTTP notification type assigned to their phone number, Bandwidth will send caller information to the URL you specified using HTTP POST.

Notification Message

The message that Bandwidth sends will have the fields in the table below. Some fields aren't always in the caller address. For example, if there's no address line 2, the "loc" field won't be in the message. Also, we can process a call without an address if one hasn't been assigned to the phone number when the call was sent to us. In those cases, we won't provide the missing fields in the message. If a field might not be sent, it's marked as "Optional" below.

Field Name

Meaning

Optional/Required

Type

a1

Two character state or province code

Optional

string

a3

Town, city, or community name.

Optional

string

addr1

Address line 1

Optional

string

callback

Callback phone number that can be used to contact the caller.

Always

string

caller_name

Name of caller

Always

string

call_time

Time of call, in RFC 3339 format, with UTC time zone

Always

string

country

Two-character country code

Optional

string

lat

Latitude of caller in decimal degrees

Always

number

loc

Secondary location of caller, sometimes referred to as "address line 2".  Floor, apartment, suite, etc.

Optional

number

lon

Longitude of caller in decimal degrees

Always

 

notification_id ID for notification recipient that caused this notification to be sent. Always string
pc Postal code for callers location Optional string
type Type of call. Will be "EMERGENCY" for 911 calls, or "ADDRESS_VALIDATION" for 933 calls. Always string

 

The field will be encoded as JSON. Here's an example message:

POST /your_callback_endpoint_here HTTP/1.1
Host: example.com
Content-Type: application/json
Content-Length: 325

{
  "addr1": "1000 ELM ST",
  "loc": "UNIT 17",
  "a3": "WINNIPEG",
  "a1": "MB",
  "pc": "R3M3P5",
  "country": "ca",
  "lat": 49.871234,
  "lon": -91.181234,
  "notification_id": "TestWebHook",
  "call_time": "2019-11-23T18:16:48.234Z",
  "caller_name": "Test Caller",
  "callback": "15553211234",
  "type": "EMERGENCY"}

Security and authorization

We recommend that your callback endpoint support HTTPs. In addition, Bandwidth will attempt to use HTTP Basic Authentication to connect to your callback endpoint. When setting up your notification, you must provide a username and password that Bandwidth can use to connect to your service.   

Failures and retries

Bandwidth will treat any HTTP responses besides 2xx and 3xx as a failure. If we get a failure response from your service, we'll attempt to send the message two more times.

Adding recipient to endpoint(s)  

Click 'Emergency', then 'Endpoints'. Search for the target endpoint and the one you want to edit by clicking into the endpoint. Once chosen, click 'Add Recipient'.

Note: you can have a maximum of 3 notification recipients per endpoint.

Image_3.png

 

On the pop-up, choose the proper recipient, and then click “Save”.

Image_4.png

 

Your endpoint will look like this: 

Image_5.png

Note:

Managing hundreds of notification recipients: The "Find Notification Recipients" drop-down is "search as you type". If there are too many choices in the drop-down, you can start typing and it'll only show recipients where the email address or recipient ID contain characters that match what you typed.

Batch uploads/edits

If you want to batch edit endpoint notification recipients, you can do bulk updates using the following steps:

  1. Click 'Emergency' tab
  2. Select 'Bulk Import'
  3. Download the CSV file for "Batch CSV Notification Recipient Import". 

Image_6.png

The CSV file will contain the following fields:

  • Endpoint is a required field that should be a valid telephone number already provisioned in the system. AEUI/ACIDs are also supported, but AEUI provisioning only happens through the Bandwidth Dashboard where the notifications aren't supported.
  • Type indicates the type of notification that will be sent. Valid values are:
    • EMAIL - the notification will be sent by email, and the recipient value will be a valid email address.  
    • SMS - the notification will be sent via text message. The recipient value must be a US or Canadian 10 digit phone number with the country code "1" prepended.
    • VOICE - the notification will be sent in the form of a voice message. The recipient value must also be a US or Canadian 10 digit phone number with the country code "1" prepended.
    • HTTP - the notification will be in the form of an HTTP callback message to an HTTP server provided by you. In this case, the recipient value must be a valid HTTP URL.
  • Recipient URI/ID is a required field that contains the notification value for the recipient or the ID for a previously created notification recipient. A notification recipient value must be valid for the given Type.
    • If a recipient value like an email address is given, it'll be added as a new notification recipient to the system even if that address is already in the system. The system will assign a recipient ID to the new address.
    • If the recipient ID is given, then we'll search your account for a matching recipient ID and assign it to the endpoint.
  • Username and Password are for HTTP notification recipient types. If you provided a URL to a service that requires basic HTTP authentication, you can provide the username and password for that service in these field..

The header row in the CSV isn't necessary, especially since including it will typically cause the batch job to show an error. 

Image_7.png

Emergency notification response example

Webhook / HTTP Callback

Image_8.png

Email

Image_9.png

SMS

Image_10.png

 

Questions? Please open a ticket with your Bandwidth Support Team or hit us up at (855) 864-7776

Article is closed for comments.