Arm/Disarm Multilevel Implementation
What Arm/Disarm Multilevel Control Doesβ
Arm/Disarm Multilevel Control enables users to control and monitor device states across Customer, Site, Device Group (Mobile Tower), and Device levels. It delivers bulk operations, real-time state synchronization, improved UI visibility, and backend enhancements β ensuring scalable and reliable device state management.
Why It Mattersβ
Without centralized Arm/Disarm control, managing device states across large deployments requires manual intervention at every level. Multilevel control ensures a single action propagates instantly across all associated devices β with real-time visibility at every level
How It Worksβ
Arm/Disarm capabilities are supported across:
- Customer
- Site
- Device Group / Mobile Tower
- Device

Each level provides:
- Real-time status visibility.
- Direct Arm/Disarm actions.
- Aggregated state representation.

Queued Operation Behavior (Bulk Arm/Disarm)β
When performing Arm/Disarm operations at Customer, Site, Device Group, and Device levels, the system uses a queued processing mechanism to ensure reliable and consistent execution:
- Once an Arm/Disarm action is triggered, the request is processed asynchronously via a queue.
- During processing: Arm/Disarm buttons are temporarily hidden or disabled at all applicable levels. Users cannot trigger another action until the current operation is completed.
- At the Device level: Status will be shown as "Queued" while the operation is in progress.
- After completion: Arm/Disarm buttons reappear and all levels reflect the updated final state.

Arming Workflowβ
Stream-based queue processing including:
- Request ingestion.
- Event dispatch (Talos).
- Redis updates.
- MongoDB updates.
- TimescaleDB audit logging.