# Emergency Alert and Response

# Overview

Call Telemetry is an enhancement to existing 911 emergency response solutions. It can discover live data about the phone, caller, or calling party, and build a context of data available for alert templates.

Call Telemetry is an augmentation data collection and alerting tool to be used with existing emergency location tools like Cisco Emergency Responder.

This guide outlines the process of integrating Cisco Callmanager to obtain realtime data to populate 911 location and address data.

# Solution Overview

# Requirements

  • Cisco Callmanager version 11.5.1.13900-42 (SU3) or higher.
    • Versions bellow this can still get 911 alerts and notifications but without location data, as this version provides the phone device name in the call event.
  • Administrator access to Cisco Callmanager
  • Enable Web access on Callmanager Cisco IP Phones to obtain CDP and LLDP, and Subnet Data

# Augmenting Cisco Emergency Responder Alerts

If you have a 911 tool like Cisco Emergency Responder, you can use Call Telemetry to augment the alerts with additional location data and alerting workflows.

Simply attach a monitoring External Call Control Profile for Call Telemetry onto your 911 pattern for Emergency Responder. CER continues to do the ELIN transformations, and Call Telemetry gives you additional location and alert workflows, including new call alert channels like SMS, Email, and Webex Teams.

# Realtime Call Discovery and Alerts

The following diagram provides a high-level overview of the realtime discovery and alerting process. Call Events trigger the discovery process, which then populates the alert template with the discovered data. The alert is then sent to the configured alerting channels.

Flowchart showing a diagram of a call, with branching off discovery events, then a alert with variables being substituted, and finally an alert being sent.

# Emergency Phone Location Data Sources

Dispatchable 911 Emeregency Location Data is more than just a calling party, or more than just a street address. It's a combination of data from multiple sources, and can be used to build a rich dispatchable location alert for emergency response teams.

Disaptchable 911 alerts must start with a rich context of source data, and Call Telemetry can provide interfaces to those data sources. With good data, you can build a rich situational alert that can be used to dispatch your emergency response teams.

Contact our support team to walk through the best practices for your specific use case.

  • Cisco Callmanager configured Phone fields:
    • Cisco Phone Model
    • Description
    • Phone Location
    • Device Pool
  • Cisco IP Phone live data:
    • CDP Switch, Port, and Switch Neighbor IP
    • LLDP Switch, Port, and Switch Neighbor IP
    • IP and Subnet Mask
  • Subnet Data in CSV format:
    • Realtime lookup for custom CSV Header location data fields that match the subnet of the phone.
  • External Data Sources:
    • Local or Remote Device:
      • CSV Subnet App can Identify the Cisco IP Phone as an MRA or VPN connected device, and incldue a custom message.
      • Phone Discovery App gathers live Traceroute data to the IP Phone to identity the next hop IP
    • Meraki API dispatchable location data for switch and port
    • QR Code mapping to Dispatchable Location data
    • External APIs:
      • Any HTTP API can be queried for location data, and added to the alert context.
      • Inventory or CMDB databases can be queried for location data.
      • Customers are actively gathering realtime data from third party APIs to add to their alert context. This data is used to build better dispatchable location alerts for their emergency response teams.

# Building 911 Emergency Alert Templates

Call Alerts can be triggered on any matching call event, and have the capability to reference workflow variables, which are dynamically substituted with their real values when the alert is executed. These variables are encapsulated within double curly braces in the alert template.

The following example screen shows an example rule alert template, with data sources and variables available. Screen showing rule alert template, and the data sources and variables available

You can learn more about alert templates in Configuring Call Alerts

# Example Data Context:

Here's an example payload available after a successful discovery. You can use any of these fields in custom alerts or apps. You can further query APIs to build in more data to this context.

{
"event": {
"called_number": "1001",
"calling_devicename": "SEP000832C78E0F",
"calling_number": "231",
"id": 21331,
"trigger_point_type": "translation_pattern"
},
"final": {
"action": "permit",
"modifiers": {
"calledname": null,
"callednumber": null,
"callingname": null,
"callingnumber": null
},
"reason": "permit rule",
"rule": {
"name": "test3",
"greeting_enabled": false,
"greeting_name": "Jason",
"calling_number": ".*",
"called_number": "1001",
"policy_action": "permit"
}
},
"phone": {
"description": "Demo Phone - Room 101",
"device_name": "SEP000832C78E0F",
"device_pool": "Default",
"extension": "1001",
"firmware": "14.1.1.0001.136",
"ip": "192.168.123.218",
"location": {
"address": {
"name": "Home",
"address1": "1234 Main St",
"address2": null,
"city": "Fairhope",
"state": "AL",
"zip": "36532"
},
"address_text": "1234 Main St Fairhope,AL 36532",
"match": "port",
"near": "IDF-Room101 Floor 1, NE Corner of Building.",
"port": {
"name": "GigabitEthernet1/0/15"
},
"switch": {
"name": "Switch",
"location": "IDF-Room101 Floor 1, NE Corner of Building.",
"ip": "192.168.123.214"
}
},
"model": "Cisco 7821",
"neighbor": {
"neighbor_ip": "192.168.123.214",
"neighbor_name": "Switch",
"neighbor_port": "GigabitEthernet1/0/15"
},
"next_hop": {
"fqdn": "Switch",
"hostname": "Switch",
"ip": "192.168.123.214",
"output": null
},
"ris_data": {
"ActiveLoadID": "sip78xx.14-1-1-0001-136",
"Description": "Demo Phone - Room 101",
"DirNumber": "1001",
"IPv4": "192.168.123.218",
"Model": "Cisco 7821",
"Name": "SEP000832C78E0F",
"Status": "Registered",
"StatusReason": "0"
},
"status": "Registered",
"status_reason": "",
"subnet": {
"ip_with_cidr": "192.168.123.218/24",
"subnet": "192.168.123.0/24",
"subnet_base": "192.168.123.0/24",
"subnet_prefix": "24"
}
}
}
Last Updated: 3/6/2024, 3:10:43 AM