Research / Sector playbook
How AI Can Improve Field-Service Dispatch
Follow an HVAC service call from intake to technician assignment. See where AI helps dispatchers, which scheduling rules need firm checks, and when people decide.

A customer chatbot can answer a service request quickly, but the customer still needs the right technician at the right site with a workable appointment. For a field-service company, the first AI project often belongs inside dispatch: turn messy job details into a clear work order, find feasible assignments, and let a dispatcher decide when the schedule changes.
Capture a job that can be scheduled
Take a regional HVAC company. At 09:20, a property manager reports that a rooftop cooling unit has stopped. Their service agreement promises a response by noon. The intake team needs the site address, asset or unit ID, symptoms, access contact, customer time window, and any immediate safety issue before it can offer a visit. A missing address or an uncertain safety issue must go back to a person for clarification.
AI can turn a call transcript or email into a draft work order and point out missing fields. The intake agent checks the draft against the customer's record and confirms the promised window. Don't let a model invent an asset ID, decide whether the call is an emergency, or promise an arrival time from incomplete data. Microsoft’s field-service work-order guidance shows why the job record needs structured tasks, products, services, and a duration before scheduling.
Check the asset and job requirements
The company looks up the rooftop unit's service history and the contract that sets the response window. A prior fan repair may help the technician prepare, but it doesn't diagnose today's fault. The job record should say which skill or certification the visit requires, whether roof access needs a named contact, and which parts staff have confirmed in stock. If the part is only a guess, mark it as a possibility rather than a condition for booking.
Use maintained job templates for common work instead of asking the model to make up every requirement. For example, an HVAC inspection template can carry expected tasks and duration. Microsoft’s incident-type documentation describes how templates can add service tasks, products, and resource characteristics to work orders. A dispatcher or service manager still corrects a template when the customer's actual job differs.
Find feasible technicians
First apply hard constraints: the technician has the required skill, works in the service area, is on duty, and can reach the site inside the promised window. Then compare travel, current bookings, likely job duration, confirmed stock, and the disruption caused by moving other work. A technician's location alone isn't a schedule. Microsoft’s schedule-assistant guidance uses availability, skills, location, and estimated travel to recommend resources, with a dispatcher making the booking.
In this illustrative call, Technician A is 15 minutes away but lacks the required rooftop-unit qualification. Technician B has the skill and is 25 minutes away, but their current visit is expected to run past noon. Technician C has the skill, becomes available at 10:15, and has a 35-minute estimated trip, giving an expected arrival around 10:50. The system should show why it excluded A and B, not just rank C first. If a route estimate or current job status is stale, it should say so.
Let the dispatcher make the call
The dispatcher calls Technician C to confirm the current job will finish on time and checks that the property manager can provide roof access. They then book C, send the technician the asset details, and tell the customer the agreed arrival window. The repair diagnosis belongs to the technician on site. If the customer reports a safety issue or another urgent job arrives, the dispatcher can change the priority and explain which appointment moves.
Keep a record of the proposed options, the actual booking, and the reason for any override. Those reasons can expose bad duration estimates, missing skills, unreliable van-stock records, or contracts that the system failed to read. When an emergency requires a manual assignment, the dispatcher should still check the hard constraints. Microsoft's guidance warns that bookings outside its schedule assistant's recommended slots don't automatically enforce capacity, work hours, or time windows.
Keep the schedule current
The technician updates the job status when they travel, arrive, need a part, or finish. Those events let dispatch correct the next arrival estimate and tell affected customers before a missed window. At completion, record the actual fault, parts used, work time, and any follow-up. This information improves future duration estimates and tells the service manager where repeat visits begin.
Separate an AI suggestion from the system of record. The scheduling application owns confirmed bookings; inventory records own stock; technicians and dispatchers update actual job state. A model can summarise the changes or flag a conflict, but it shouldn't silently move a promised appointment or claim a part is in a van without a current stock record.
Test dispatch before customer chat
Start with one job type and one service area. For several weeks, let the tool draft work orders and suggest assignments while dispatchers keep final control. Compare its suggestions with actual bookings and completed visits. Measure time from intake to assignment, missed arrival windows, travel time, repeat visits caused by wrong skills or missing parts, and the minutes dispatchers spend correcting suggestions. Review every override with the people who manage the route and do the work.
If the tool saves intake time but sends more technicians to the wrong job, narrow it to work-order drafting. If it proposes feasible appointments that staff accept and customers receive on time, extend the same process to another job type. A customer-facing chatbot makes more sense once the underlying work order and schedule can support the answer it gives.
