The problem dynamic emergency solves
A nomadic softphone breaks the old assumption that a phone number implies an address. Teams' answer is layered:
- Registered (static) address — every Calling Plan/OC number carries a validated civic address (LIS). The fallback truth.
- Dynamic location — the client maps its NETWORK evidence to a location you pre-seeded in the Location Information Service: subnets, Wi-Fi BSSIDs, switch chassis/ports → building/floor/room. Right subnet = right floor sent to the PSAP, automatically.
- Emergency call routing policies — which numbers are 'emergency' per country
(112/999/911), how they route (Calling Plans/OC: carrier-handled; Direct
Routing:
TeamsEmergencyCallRoutingPolicymust route them — YOU own this), plusTeamsEmergencyCallingPolicyfor notifications (alert security desk on any emergency call, listen-in options).
The build, in order
Seed LIS with the real network (export from IPAM/Wi-Fi controller; civic addresses validated) → assign emergency calling + routing policies (per site via network sites where needed) → for DR: emergency usages/routes FIRST in every relevant policy → test per country procedure → repeat LIS upkeep on every office move (the step that decays).
Failure signatures
| Symptom | Cause |
|---|---|
| Emergency call routes but with HQ address for a branch caller | LIS has no mapping for the branch subnet — fallback to registered address |
| DR user's 999 fails outright | Emergency numbers not matched by any usage/route in their policy — the fatal misconfig |
| Security desk never notified | TeamsEmergencyCallingPolicy notification unset for that population |
| Works on ethernet, wrong floor on Wi-Fi | BSSID mappings missing/stale after AP refresh |
| Remote-worker calls carry office address | No dynamic match off-network → registered address; user-confirmed address features fill the gap — brief users |
What to watch (proofs)
- The location database:
Get-CsOnlineLisLocation,-LisSubnet,-LisWirelessAccessPoint,-LisSwitch— coverage vs your real network inventory; the delta is your risk map. - Policy census:
Get-CsTeamsEmergencyCallingPolicyandGet-CsTeamsEmergencyCallRoutingPolicy(both scanned nightly) — notifications and number handling per population; drift here should page someone. - The client's belief: Teams client Settings > Calling shows the emergency address the client currently claims — spot-check per site/floor during walkthroughs.
- Test evidence: recorded test calls per country procedure with PSAP-confirmed (or test-service-confirmed) location, kept with dates — the audit artifact that matters.