Package-level declarations
Types
Implementation of AdminPacketHandler that processes admin messages, including session passkeys, device/module configuration, and metadata.
Centralized heartbeat sender for the data layer.
Implementation of FromRadioPacketHandler that dispatches FromRadio variants to specialized handlers.
In-memory inside/outside state per (waypointId, nodeNum). NOT persisted: a relaunch re-baselines, which is exactly what prevents spurious alerts at startup. Mutated from the service scope as positions arrive, so guarded by a Mutex.
Raises a LOCAL notification when another mesh node's reported position crosses a waypoint's geofence. Evaluation runs against OTHER nodes' positions arriving over the mesh — never the device's own location — so this is manual point-in-region math, NOT the OS Geofencing API.
The transition observed when a node's inside/outside state for a geofence is updated.
Lockdown authentication state machine. Processes LockdownStatus messages from the firmware, drives the LockdownState exposed to the UI, and manages auto-replay of cached passphrases.
Implementation of MeshDataHandler that decodes and routes incoming mesh data packets.
Implementation of MeshMessageProcessor that handles raw radio messages and prepares mesh packets for routing.
Implementation of MessageFilter that uses regex and plain text matching.
Implementation of NodeManager that maintains an in-memory database of the mesh.
In-memory implementation of SessionManager backed by an atomicfu-protected PersistentMap.
Implementation of StoreForwardPacketHandler that handles both legacy S&F and SF++ packets.
Implementation of TelemetryPacketHandler that processes telemetry packets and manages battery-level notifications with cooldown logic.
XModem-CRC receiver state machine.