The job, before the tools
A dispatcher's day is a running argument between a plan and reality. The plan was made yesterday: who visits which outlets, who takes which service orders, which technician covers which beat. Reality starts disagreeing around the second stop — a truck breaks down, a case escalates, a customer calls in something urgent, a technician runs long. The dispatcher's job is to keep absorbing those disagreements without letting commitments slip.
Most dispatchers do this across a spreadsheet, a group chat, a phone that never stops, and a mental map of who is roughly where. xMatix collapses that into one surface: the Allocation Console. Here is a day on it.
Morning: the plan meets the map
The console opens on the Map view. Every field resource appears as a live position — not where they said they would be, where they are. Technicians who have checked in show as active; the geofenced check-in already verified they started where the plan said, with server-checked gates behind it: radius, working hours, holidays, leave. A KPI strip across the top gives the day at a glance — jobs assigned, jobs unassigned, resources on the clock — and an alert rail collects what needs a human.
The backlog sits alongside: visit plans, leads, cases, and service orders waiting for an owner. This is the first structural difference from a whiteboard — the console dispatches all of it, not just one document type. A service order and an escalated case compete for the same technician's afternoon in the same view, which is exactly how the real world works.
Two technicians called in sick overnight. Their day now has to go somewhere.
The Gantt: time made visible
Switch to the Gantt view and the day turns into rows — one per resource, their assignments laid out as blocks against the clock, free slots visible as gaps. The resource availability calendar is already folded in: leave, shift boundaries, and existing commitments shape what each row can absorb.
Reassigning the sick technicians' work is drag-to-schedule: pick a block, drop it into a gap on another row. The console is not a passive drawing surface — assignments land against real availability, so the dispatcher is placing work into slots that actually exist rather than decorating a timeline and hoping.
Then there is the backlog that never had an owner. This is where the dispatcher stops dragging and clicks Optimize day.
Optimize day: the button that does the tedious part
Optimize day takes the unassigned backlog and fills it into the free slots across the team — automatically, and with the constraints a human juggles in their head. It is multi-resource optimization that respects shift windows, service times at each stop, and workload balance across the team, computed over road-network travel times rather than straight-line guesses. A stop across the river is scored by the route a vehicle actually drives, not the distance a crow flies.
Skills and capacity shape who gets what. Work routes to resources who can do it and have room to take it — the same skills- and capacity-aware routing discipline that governs queue assignment elsewhere in the platform applies to the field. The dispatcher reviews the proposed fill on the Gantt, adjusts by hand where judgment says otherwise — a drag is always available — and commits. What used to be an hour of tile-sliding is a review pass.
The plan is not a prayer, either. Alongside the planned and optimized sequences, xMatix computes the sequence each technician actually follows, and keeps every version comparable. Over time the dispatcher learns which routes survive contact with reality and which get quietly reordered by the people driving them — and plans accordingly.
Midday: the clocks
Cases carry SLA milestones, and milestones carry clocks. The console does not wait for a breach to tell anyone: business-hours-aware milestones move through warning states before breach states, and a warning is precisely the moment a dispatcher can still do something. A case ticking toward its response milestone shows up in the alert rail; on the Board view it is one drag away from a technician with a free slot within reach of the customer.
The Board view is the third face of the same console — work as cards in columns, drag-to-assign. Some dispatchers live on the map, some on the timeline, some on the board; the point is that all three are views over one allocation state, so a reassignment made on any of them is instantly true on the others. Nobody reconciles views at the end of the day, because there is nothing to reconcile.
An urgent order lands mid-afternoon. Map view: who is near, who is active, who has slack. The travelled paths show one technician just closed out two streets away. Drag, assign, done — and the technician's phone gets the change over the air, because the mobile app is the other half of this loop.
The trail is the proof
Dispatch is only half the loop; the other half is knowing what actually happened. From check-in to check-out, background GPS traces each technician's travelled path — with explicit disclosure to the technician, visible to managers. The map shows travelled paths live during the day, and trip playback replays them after it.
This closes arguments that used to be unwinnable. Did the visit happen? The geofenced start and end say so. Was the route reasonable? Replay it. Why did the afternoon collapse? Play the day back and watch the disruption propagate. The trail turns disputes into lookups — and it protects the technicians too, because "I was there" stops being a claim and becomes a record.
Evening: what changed, and what didn't
By end of day, the plan the dispatcher started with has been rewritten a dozen times — two sick technicians absorbed, a backlog auto-filled, an SLA warning caught in the warning window instead of the breach report, an urgent order landed on the nearest free pair of hands. None of that is new work. Dispatchers have always done this.
What changed is where the day's information lived. Positions were live instead of claimed. Availability was a calendar instead of a memory. Travel times were road-network facts instead of guesses. The backlog filled itself into real gaps and left the dispatcher the judgment calls. And every decision landed on the technician's phone without a phone call — then came back as a travelled path that proves how the day really went.
The console does not replace the dispatcher. It replaces the spreadsheet, the group chat, and the mental map — and gives the dispatcher's actual skill, judgment under pressure, a surface that keeps up with it.
