Autonomous crisis dispatcher for the MENA region.
GeoDispatch is a real-time disaster response pipeline that detects seismic events, locates affected people via network APIs, and autonomously dispatches SMS alerts and rescue teams — in under 4 seconds.
Disaster Sensor → Go Supervisor → Python AI Agent → SMS + Rescue Dispatch
│ │
Nokia NaC CAMARA React Dashboard
(location + network) (live gov map)
When a disaster event is detected, the pipeline:
- Fetches the location and network reachability of every device in the affected radius via the CAMARA Network APIs (Nokia NaC)
- Assigns each device a danger zone (
red/orange/green) using haversine distance from the epicenter - Sends batches of triaged devices to the AI agent, which decides the action per device: SMS evacuation message, rescue flag, or both
- Dispatches SMS and rescue flags in parallel, streaming live updates to the government dashboard
| Repo | Description | Stack |
|---|---|---|
| supervisor | Pipeline orchestration — CAMARA API calls, zone assignment, AI batching, SMS dispatch | Go |
| agent | AI triage agent — receives device batches, decides actions, generates situation reports | Python |
| dashboard | Live government map — real-time device dots, zone counters, AI narratives | SolidJS + Leaflet |
| contracts | Shared JSON schemas for all service boundaries | JSON Schema |
| deploy | Docker Compose and deployment configuration | Docker |
┌─────────────────────────────────┐
│ Go Supervisor │
POST /sensor ────────▶│ │
(disaster event) │ ┌─ Goroutine A ─────────────┐ │
│ │ CAMARA Geofencing + QoS │ │
│ └───────────────────────────┘ │
│ ┌─ Goroutine B ─────────────┐ │
│ │ DB: 3 nearest shelters │ │
│ └───────────────────────────┘ │
│ ┌─ Per-device (semaphore 50) ┐ │
│ │ Location + Reachability │ │
│ │ → Haversine → Zone │ │
│ └───────────────────────────┘ │
│ ↓ sorted by distance │
│ Batches of 20 devices │
└────────────┬────────────────────┘
│ POST /decide
▼
┌─────────────────────────────────┐
│ Python AI Agent │
│ per device: sms|rescue|both │
│ picks best shelter │
│ generates gov narrative │
└────────────┬────────────────────┘
│
┌────────────────┼────────────────┐
▼ ▼ ▼
SMS Dispatch Rescue Flag WebSocket
(per device) (red zone) → Dashboard
- Go calculates zones. AI decides actions. Never reversed.
- All phones E.164 format (
+212XXXXXXXXX) - All timestamps Unix milliseconds (
int64) - All zones lowercase:
red|orange|green - Rescue flagging is red zone only
- The
reasoningfield in AI decisions is internal audit only — never shown to end users
MENA Hackathon — a real-time disaster response system built on top of the Nokia Network as Code (NaC) CAMARA APIs, combining network intelligence with AI triage to save lives faster.
Morocco 🇲🇦 · iliaszahr.professional@gmail.com