Panic

Part of the IP4CMS portal. ← All module guides

What it's for β€” The Panic module is the operator side of an emergency panic-button system. Members raise a panic alert from the member portal or app by choosing one of your configured emergency types; the system immediately notifies the people that type is set up to alert (the member's own emergency contacts, a responder group, and/or external responders) and opens a tracked incident. As an operator you monitor those incidents on a live dashboard and work each one through its lifecycle β€” acknowledge, mark in progress, escalate, resolve or cancel β€” adding notes and watching the member's reported location along the way. Everything a member triggers and everything an operator does is recorded as a timeline on the incident.

Where to find it β€” Main navigation: Panic (route /app/panic). The breadcrumb shows Panic. The landing screen is the Panic Dashboard (the Logs view). Two configuration screens live under Settings: Emergency Types (/app/settings/panic-emergency-types) and Responder Groups (/app/settings/panic-responder-groups). The in-module links to those two screens redirect into Settings.

Before you start

Key tasks

Configure emergency types

Emergency types are the options members see when they raise an alert (for example "Medical", "Security", "Fire"). Only 4 types can be active at a time β€” the active ones are the ones shown in the member portal/app. A counter on the page shows n/4 active.

  1. Go to Settings β†’ Emergency Types (or open it from the Panic module link).
  2. Click New Emergency Type. The Create Emergency Type dialog opens.
  3. Complete the fields:
  1. Click Create Type (or Update Type when editing). A success message confirms.

To edit a type, click Edit on its row; to remove one, click Delete and confirm.

Configure responder groups

A responder group is a reusable response team that any emergency type can link to.

  1. Go to Settings β†’ Responder Groups (or open it from the Panic module link).
  2. Click New Responder Group. The Create Responder Group dialog opens.
  3. Complete the fields:
  1. Click Create Group (or Update Group when editing). A success message confirms.

Each group is shown as a card listing its members. Use Edit / Delete on the card.

Monitor incoming panic alerts

The Panic Dashboard (the Logs view) is your live monitoring queue.

  1. Go to Panic. The dashboard lists incidents, newest first.
  2. The list auto-refreshes every 10 seconds while no incident detail is open. You can also click Refresh at any time.
  3. Use the view tabs above the list to filter by lifecycle bucket: Active, Resolved, Cancelled, or All. "Active" covers triggered, dispatched, acknowledged, in-progress and escalated incidents.
  4. Narrow further with the Search box (member name or type β€” press Enter), the Status filter (Triggered, Dispatched, Acknowledged, In progress, Escalated, Resolved, Cancelled), and the Emergency Type filter. Columns can be sorted and column-filtered.

Each row shows Created, Age (how long the incident has been open), Member, Emergency Type (with its notify level), Status, Dispatch (delivery health), and Last Event.

Work an incident through its lifecycle

  1. On the dashboard, click View on an incident. The View Emergency detail opens.
  2. The header summarises type, member name, notify level, Status, and Dispatch health. Two tabs are available: Lifecycle (default) and Details.
  3. On the Lifecycle tab, Lifecycle Timeline lists every status change, event, location sample and dispatch outcome in order. The Dispatch Attempts sub-tab lists each recipient with the channel used, the target (phone/email), and whether it was Sent or Failed.
  4. To change status, use Update Status (shown for incidents that aren't already resolved or cancelled):
  1. To record an operator comment without changing status, use Operator Note: type the note and click Add note. It is added to the timeline.

Status meanings: Triggered (just raised) β†’ Dispatched (notifications attempted) β†’ Acknowledged β†’ In progress β†’ optionally Escalated β†’ Resolved or Cancelled. Once an incident is resolved or cancelled the status-update panel is hidden.

Review location and incident details

  1. In the incident detail, open the Details tab.
  2. The left side shows read-only Type, Person, Last Status and the latest Note.
  3. The right side shows Last Location on an embedded map (OpenStreetMap) with the captured coordinates and capture time, plus Created At. If no coordinates were captured it shows "Location not captured".
  4. Expand Incident details for the last-location coordinates, any System metadata (e.g. source, run ID), and Timing (open duration, acknowledged time, closed time).

Location comes from the member's device at trigger time (and any later location samples the app reports); it is shown, not editable, in the portal.

Member panic contacts

Each member maintains their own list of personal emergency contacts ("member panic contacts"). These are created and managed by the member in the member portal/app, not by the operator in this module. A contact has a name, optional phone/email, per-channel notification toggles (SMS, email, push), an active flag and a sort order; contacts can be free-typed or linked to another platform user (push delivery is available when the contact is a same-community user). When an emergency type is set to notify Individual, these are the people alerted. The portal operator does not edit a member's contacts here β€” the operator side is the dashboard and configuration screens.

How the data connects

Permissions & access

The Panic module uses these role permissions (all gated behind the panic licence module):

A holder of the global settings:update:all permission can also reach the read and manage endpoints. The split is important: members trigger alerts (panic:trigger), while operators monitor and manage them (panic:log:read + panic:lifecycle:manage). The dashboard/operator endpoints accept either a JWT session or an X-API-Key, so an external guard/NOC integration can be granted a role with panic:log:read and panic:lifecycle:manage.

Tips & gotchas