Pager-Style Alerts via CallKit (iOS) and ConnectionService (Android)
New Features
- iOS: VoIP push triggers CallKit incoming call with custom ringtone. User answers to hear dispatch audio, call auto-ends when audio finishes.
- Android: Telecom ConnectionService with full-screen incoming call UI, custom ringtone, auto-answer option, speaker playback.
- Pager alert ringtone picker in App Settings (both platforms)
- Per-device live feed tracking — VoIP/pager skipped when device has active live feed (web clients unaffected)
- Per-device disconnect notifications — only the disconnected device gets notified, web clients excluded
- Auto-answer setting (Android) — dispatch audio plays immediately without call UI
Fixed
- Pre-alerts excluded from VoIP/pager triggers
- FCM notification sound suppressed for iOS pager alerts (no double audio)
- iOS live feed audio resumes after CallKit call ends
Server Changes (backward compatible)
- New FCM WebSocket command links sessions to push tokens
- Per-device live feed checking for VoIP skip
- Per-device disconnect notifications