Platform Deep Dive
Seamless Network Handoff: Staying Connected From Lobby to Parking Lot
How GatherSafe keeps alerts, messages, and PTT audio alive as a phone moves between Wi-Fi and cellular, and where iOS and Android genuinely differ.
Quick answer
GatherSafe keeps messages, alerts, and live PTT audio connected as a phone moves between Wi-Fi and cellular by reconnecting Socket.IO automatically and letting LiveKit's WebRTC renegotiate the audio path. On iOS, Apple's Multipath TCP entitlement lets signaling traffic use both networks at once for a smoother handoff.
A security team doesn't stay in one spot. Someone steps from the lobby's Wi-Fi out to the parking lot on cellular mid-conversation, and the whole point of the app is that they stay reachable through that transition. Here's what actually happens to alerts, messages, and PTT audio when the network underneath changes.
Two different problems: signaling and voice
GatherSafe has two separate connections that both need to survive a network change: the Socket.IO connection carrying messages, alerts, and presence, and the LiveKit/WebRTC connection carrying live PTT audio. They handle a network switch differently, because they're fundamentally different kinds of traffic — one is a stream of discrete events, the other is continuous real-time media.
- The Socket.IO connection reconnects automatically when the network changes, and any messages or alerts sent during the brief gap are delivered once the connection is reestablished — nothing is silently dropped, though there can be a short delay of a second or two while the reconnection happens.
- A live PTT transmission migrates to the new network path directly. If you're mid-transmission when your phone hands off from Wi-Fi to cellular, LiveKit's WebRTC connection renegotiates in the background — in normal conditions this is seamless enough that neither side of the conversation notices it happened.
Multipath TCP, specifically on iOS
On iOS, GatherSafe uses Apple's Multipath TCP networking entitlement for its API and signaling traffic. Multipath TCP lets a single connection use more than one network interface — Wi-Fi and cellular simultaneously — so the connection itself doesn't have to fully tear down and rebuild when one interface drops. The practical effect: alerts, messages, and incident reports hand off between Wi-Fi and cellular with less of the visible "reconnecting" gap a normal single-path connection experiences.
iOS · Multipath networking entitlement
This is an Apple-managed capability — GatherSafe's app ID has to be granted the multipath networking entitlement before it can use it, similar in spirit to the entitlement gates covered in our PushToTalk framework post. For PTT audio specifically, the underlying WebRTC connection handles the Wi-Fi-to-cellular handoff on its own, independent of Multipath TCP.
Android · Standard reconnection, foreground-service backed
Android doesn't expose an equivalent multipath networking API to third-party apps, so network handoff there relies on standard reconnection logic: Socket.IO detects the dropped connection and reconnects on the new network, and LiveKit renegotiates the WebRTC path the same way it would on iOS. Because this reconnection work happens in the background, it depends on the same foreground service and Unrestricted battery setting that keep every other background PTT feature reliable on Android.
What this doesn't fix
Key takeaways
- Messaging/alert traffic and live PTT audio use separate connections and handle network changes differently.
- On iOS, GatherSafe uses Apple's Multipath TCP entitlement so API/signaling traffic can use Wi-Fi and cellular together, smoothing the handoff.
- PTT audio migrates between networks through LiveKit's own WebRTC renegotiation on both platforms.
- Android relies on standard reconnection logic backed by the same foreground service that needs Unrestricted battery access to stay reliable.
Frequently asked questions
What happens to a live PTT transmission when a phone switches from Wi-Fi to cellular?
LiveKit's WebRTC connection renegotiates the network path in the background. In normal conditions this is seamless enough that neither side of the conversation notices the switch happened.
What is Apple's Multipath TCP used for in GatherSafe?
On iOS, GatherSafe uses Apple's Multipath networking entitlement so its API and signaling connection can use Wi-Fi and cellular simultaneously, reducing the visible 'reconnecting' gap when one network drops. It's a managed capability Apple has to grant to the app.
What happens if there is no network signal at all?
Network handoff smooths the transition between two networks that both have signal — it can't create connectivity where none exists. In a true dead zone, GatherSafe queues messages for delivery once connectivity returns, but a live PTT transmission can't be replayed after the fact.

Your congregation deserves better protection
Join security teams across the country who chose purpose-built tools over generic apps. Purpose-built for how church security teams actually operate.
Starting at $8/month · iOS & Android