Skip to main content

Emergency Management

The Emergency Management feature displays active incidents and emergency events sourced from the CORD2 system on the Cesium map.

Enabling Emergency Management

In the sidebar under Live Observation → UCF, click Emergency Management. The app fetches current events and plots them as billboards on the map.

Event Pins

Each emergency event is displayed as a colored pin billboard at its reported location. Pin colors reflect event severity or type.

Clicking a pin:

  1. Flies the camera to the event location
  2. Opens an info box with event details including:
    • Event title and type
    • Timestamp
    • Severity level
    • Location description
    • Associated images (displayed in a carousel)

When an event includes photo documentation, images are shown in a slide carousel within the info box. Navigation arrows and dot indicators allow browsing through multiple images. Images are proxied through /proxy-image to bypass CORS restrictions.

Data Source

Event data comes from the CORD2 Firebase Cloud Function:

Server flow:
1. POST to Firebase Identity Toolkit → get anonymous idToken
2. GET https://us-central1-cord2-6c88c.cloudfunctions.net/api/events
with Authorization: Bearer {idToken}

This two-step auth is required because the CORD2 Cloud Function validates Firebase auth tokens. The server performs this exchange server-side using the EM_FIREBASE_API_KEY environment variable.

Implementation Notes

  • Event entities are stored in emEventEntities[]
  • The emEventsVisible boolean tracks layer visibility
  • Events are fetched once on first toggle and re-used for subsequent show/hide operations
  • clearEmergencyEvents() removes all event entities from the viewer