Skip to main content

Responder

Resgrid Responder is a cross-platform application designed for individual first responder personnel. It enables emergency responders to manage their status, view dispatch calls, communicate with team members, track their location in real-time, use push-to-talk voice channels, and coordinate through shifts and calendars — all from a single mobile interface.

Ideal Use Cases

  • On-Scene First Responders — Volunteer firefighters, EMS personnel, or search & rescue team members who need to quickly update their status (responding, available, on-scene), view dispatch call details, and navigate to incident locations.
  • Push-to-Talk Field Communication — Teams needing walkie-talkie-style voice communication via WebRTC voice channels, with Bluetooth PTT headset support or media button toggle.
  • Real-Time Personnel Tracking — Departments needing GPS tracking of personnel on a shared map, with background location reporting and real-time updates.
  • Dispatch & Call Management — Field-based call creation with multi-mode location entry, photo/file attachments, call notes, and dispatch selection of specific personnel, units, groups, or roles.
  • Shift & Calendar Coordination — Responders managing their shift sign-ups and RSVP-ing to department calendar events.
  • Offline & Low-Connectivity Environments — The offline queue ensures status updates and critical actions are queued and automatically synced when connectivity is restored, making it suitable for rural or disaster scenarios.

Supported Platforms

PlatformSupport LevelDetails
iOS✅ FullPrimary target with CallKeep VoIP for background PTT and critical alerts
Android✅ FullPrimary target with foreground services for background location, audio, and BLE
Web⚠️ PartialSidebar/navigation supported; background features (BLE, CallKeep) unavailable. Docker deployment available

Operations & Features

Status & Staffing Management

  • Set your personnel status from department-configured options (e.g., Available, Responding, On Scene, Not Responding) with optional destination (call or station) and notes
  • Set your personnel staffing level (e.g., On Shift, Available, Off Duty) with notes
  • GPS coordinates are automatically captured with each status change
  • Offline queue persists status changes when offline and automatically retries when connectivity returns

Home Dashboard

  • Current user status and staffing cards with colour-coded indicators
  • Department statistics overview (active calls, available units, on-duty personnel)
  • Quick-action status and staffing buttons

Calls

  • View all active dispatch calls with priority indicators and search
  • Create new calls with:
    • Name, nature/description, priority, and type
    • Contact name and information
    • Five location input methods: address search (Google Geocoding), GPS coordinate entry, what3words word search, Plus Code search, and interactive map picker
    • Dispatch selection: multi-select personnel, groups, roles, units, or everyone
  • Call detail view with tabbed content: info, contact, protocols, dispatched resources, and timeline
  • Add notes, images, and file attachments to calls
  • Route to call via native maps for turn-by-turn navigation
  • Edit and close existing calls (permission-gated)

Personnel & Units

  • View all department personnel with status, staffing, group, and role information
  • Filter personnel by group, role, or status
  • View all department units with current statuses
  • Filter units by type and status

Messaging

  • Inbox and sent messages with search
  • Compose new messages with recipient selection (users, groups, roles)
  • Reply and respond to messages

Map

  • Full Mapbox GL interactive map with pins for personnel, units, calls, stations, and POIs
  • Real-time updates via SignalR for live position tracking
  • Heading-locked navigation mode with tilted perspective for turn-by-turn orientation
  • Recenter button to snap camera to current GPS position
  • Tap pins for detail modals with type-specific information

Push-to-Talk (PTT) Voice

  • LiveKit WebRTC voice channels for real-time communication
  • Join and leave department voice rooms
  • Microphone toggle (mute/unmute)
  • Audio routing: Bluetooth, speaker, or earpiece
  • CallKeep integration for OS-level VoIP call handling (background audio on iOS)
  • Bluetooth PTT headsets: scan, discover, and connect supported BLE devices (AINA PTT, B01 Inrico, HYS)
  • Media button PTT: AirPods or wired headset media button triggers push-to-talk

Audio Streams

  • Listen to department audio streams (scanner feeds, dispatch audio)
  • Play/pause streaming audio with sidebar indicator

Calendar & Shifts

  • View department calendar events with daily and upcoming views
  • RSVP to calendar events (sign up or cancel attendance)
  • View shift schedules and today's shifts
  • Sign up for shift days

Contacts, Notes & Protocols

  • Contact directory with detail views and notes per contact
  • Department notes list with detail view
  • Emergency protocols/SOPs with detail sheets

Notifications

  • Push notifications via Firebase Cloud Messaging with Notifee
  • Android notification channels mapped to call priorities (emergency, high, medium, low, custom)
  • iOS critical alert support to bypass Do Not Disturb
  • In-app notification inbox powered by Novu with unread badges

Real-Time Updates

  • Two persistent SignalR WebSocket connections:
    • Eventing Hub: personnel status/staffing updates, unit status updates, call added/updated/closed
    • Geolocation Hub: live personnel and unit location updates
  • Auto-reconnect with token refresh

Settings & Configuration

SettingDescription
Server URLCustom API endpoint for self-hosted deployments
Login InfoUpdate username and password
ThemeLight, Dark, or System
LanguageEnglish, Spanish, or Arabic
Keep AlivePrevent screen from sleeping
Realtime GeolocationSend GPS position to API in real-time
Background GeolocationTrack location when app is backgrounded
Bluetooth DeviceScan and pair BLE PTT headsets

Hardware & Permission Requirements

Required Hardware

HardwareRequiredPurpose
GPSYesPersonnel tracking and map positioning
InternetYesAPI, SignalR, LiveKit, push notifications
SpeakerRecommendedAudio streams and voice playback
MicrophoneRecommendedPTT voice communication
CameraOptionalTaking photos for call documentation
Bluetooth LEOptionalExternal PTT headset devices

iOS Permissions

PermissionReason
Location When In UseShow current position on map
Location AlwaysBackground GPS tracking for personnel positioning
MicrophoneVoice PTT communication via LiveKit channels
CameraTake photos for call documentation
Photos LibraryAttach images to calls
BluetoothBLE PTT headset connectivity

Background Modes: remote-notification, audio, bluetooth-central, voip

Entitlements (production): Critical alerts and time-sensitive notifications

Android Permissions

PermissionReason
Fine/Coarse LocationGPS tracking for map and personnel positioning
Background LocationBackground GPS tracking
Record AudioMicrophone input for PTT voice
Capture Audio OutputAudio routing for PTT/voice
Post NotificationsPush notifications (Android 13+)
Wake LockKeep device awake for active calls/PTT
Foreground ServiceBackground location tracking
Foreground Service (Microphone)Background PTT voice
Foreground Service (Connected Device)Background BLE headset
Foreground Service (Media Playback)Background audio stream playback
Phone / CallKeepSystem call integration for background audio