System & User Flows
Dispatch & Routing Workflow
Quick search…⌘K
The Dispatch Engine is a Go-based real-time routing system that automatically assigns the best available technician within seconds of a booking being confirmed. It combines geo-proximity, van inventory, ADAS certification, and technician utilization scoring.
Dispatch Target: Mean Time to Dispatch (MTTD) target: ≤ 8 minutes from booking confirmed to technician assigned and notified. Current performance: 4.2 min avg.
Dispatch Algorithm Flowchart
Loading diagram…
Technician Scoring Algorithm
// Technician Assignment Scoring (normalized 0–1)
score = (0.50 × distance_score)
+ (0.30 × utilization_score)
+ (0.20 × customer_rating_score)
// distance_score = 1 - (distance_km / max_radius_km)
// utilization_score = 1 - (jobs_today / max_daily_jobs)
// customer_rating_score = (technician_avg_rating - 1) / 4
Dispatch Escalation Ladder
| Scenario | Auto Action | Escalation | SLA |
|---|---|---|---|
| No tech in 15mi radius | Expand to 30mi, then 50mi | Slack alert to dispatcher if 50mi fails | Dispatcher responds in 5 min |
| Tech declines job | Reassign to next-best candidate | After 3 declines: escalate to dispatcher | 2 min per cycle |
| Part not in van | Add parts pickup to route, add 30min buffer to ETA | If part not at any branch: ops alert | Parts ops resolves in 15 min |
| Morning peak overload (> 95% tech utilization) | Offer 10% discount for afternoon slots | GM notified; temp tech pool activated | Same day |
Real-Time GPS Tracking
Once a technician departs for an appointment, the customer tracking map activates:
- Technician mobile app posts GPS coordinates to Redis Geo every 30 seconds
- Customer sees live map with technician pin and updated ETA every 90 seconds
- Automated SMS sent when tech is 15 minutes away
- Automated SMS sent when tech arrives on-site
- GPS tracking stops once work order status changes to
in_progress