Dispatcher Console
The Dispatcher mode of the TrafficDelivery app is your delivery command center. From here you assign deliveries to drivers, watch every active stop on a live map, and send customers their "almost there" text -- all updating in real time as drivers work.
Delivery requires Enable Local Delivery (enable_local_delivery) on the store. Dispatcher mode is for delivery-capable staff (Manager, Admin, Super Admin -- and Drivers can use it too).
Opening the Console
Open TrafficDelivery (native app or ?display=delivery in a browser), then choose Dispatcher mode from the ⚙ Settings button. A desktop browser is a comfortable place to dispatch from; the native app adds closed-app push alerts. See The Delivery App & Modes.
Dispatcher mode has three tabs along the bottom: Feed, Map, and Assign.
Assign Tab — Dispatch Deliveries
The Assign tab is where unassigned deliveries become driver routes.
Each unassigned delivery shows:
- The address.
- A Today / Overdue / date label and the customer's requested window ("wants 2-3 PM").
- A row of driver buttons -- one per available driver.
To assign, tap the driver you want. The delivery is added to that driver's route for the day (their route is created automatically if they don't have one yet), and the row disappears from the list.
The driver list includes managers and admins who take runs -- so if you're dispatching and driving, you can assign a delivery to yourself and it lands on your own route.
The assign list shows deliveries due today or earlier. Orders scheduled for a future day stay hidden until that day. See Routes & Optimization for the full pooling rules.
Feed Tab — Live Activity & Customer Texts
The Feed tab is a real-time view of your active deliveries, grouped by driver. Each group has a header like "Dana · 3 active" and lists that driver's remaining stops with the address, requested window, ETA, and a ⚠ flag when a stop is predicted to run late.
The feed updates live as drivers claim, optimize, and deliver -- no refresh needed.
Customer "almost there" texts
When a driver in Driver mode taps Notify ~5 min, the request comes to you. Your console shows a "Customer ~5 min away" card with two buttons:
| Button | Action |
|---|---|
| 📨 Text | Opens your phone's text composer with the customer's number and message pre-filled -- send in one tap, then the card clears. |
| Dismiss | Clears the card without texting. |
This is why drivers never text from their own number: the message goes out from the dispatcher's phone (typically a shared store/burner number), keeping customer communication on a business line.
If the dispatcher app is open, these cards appear instantly over the live connection. To also get buzzed when the app is closed, the store needs Firebase push configured -- see Delivery Setup. Without it, dispatch still works while the app is open; only the closed-app buzz is skipped.
Map Tab — Live Driver Map
The Map tab plots every active stop across all your drivers on one map. Pins are numbered by sequence and turn green once delivered. Use it at a glance to see where your fleet is, which areas are clustered, and whether a driver is falling behind.
Driver position on the map reflects the latest location each driver's app has reported.
A Typical Dispatch Shift
- Open Dispatcher mode on the store tablet or a desktop browser.
- As orders arrive, open Assign and tap a driver for each delivery (group nearby addresses on the same driver).
- Keep an eye on the Feed -- watch ETAs and late ⚠ flags.
- When a driver is ~5 minutes out, a Text card pops up -- tap Text to message the customer.
- Glance at the Map during peak to balance load across drivers.
Best Practices
- Batch by area -- assign clustered addresses to the same driver so their optimized route stays tight.
- Dispatch from a fixed device -- a store tablet or desktop in Dispatcher mode is easier than a phone for assigning all day.
- Use a shared number for texts -- dispatcher texts go from the device you're on; use the store's business/burner number, not a personal phone.
- Watch the late flags -- a stop repeatedly showing ⚠ may need to be re-balanced to another driver or have its promised window adjusted.
- Enable push for after-hours -- if you dispatch with the app closed (e.g., from another room), set up Firebase push so the "almost there" cards still reach you.
Troubleshooting
| Problem | Solution |
|---|---|
| No drivers show on a delivery | No delivery-capable users exist, or they're not set up. Check Users and roles (see Drivers). |
| A delivery never appears to assign | It may be scheduled for a future day, or already assigned/claimed. Future-day orders surface on their day. |
| Text cards never appear | Drivers may be in Both/Dispatcher mode (they text themselves) rather than Driver mode, or the live connection dropped. |
| No closed-app buzz | Firebase push isn't configured for the store. See Delivery Setup. |
| Map is empty | Stops without geocoded pins don't appear. Fix them via Fix delivery pins (see Routes). |
What's Next?
- The Driver App -- The driver's side of the workflow.
- The Delivery App & Modes -- Driver, Dispatcher, and Both modes.
- Routes & Optimization -- Pooling, windows, ETAs, and pins.
- Delivery Setup -- Google Maps and push notification setup.