Field Service Dispatcher
AI dispatcher for trades operators (HVAC / plumbing / electrical / roofing / pest control). Inbound call to scheduled job in 2 minutes, tech routed by skills + location + parts inventory + overtime risk, animated reassignments on a live map fragment, customer comms timeline through completion with NPS-gated review-vs-recovery routing, and a 12-customer maintenance batch with segment-aware drafts (membership / one-off / cold). Vertical toggle re-keys the entire UI: same architecture, swapped vocabulary across all 5 trades.
A live AI dispatcher picks up, books your service call, and flags urgent issues. It runs on a real phone line right now.
How it works
1. Inbound call to booked job in 2 minutes
Pick one of three scenarios β urgent AC outage with kids in the house, gurgling toilet with possible main-line backup, or a quote-only roof estimate. AI text-back fires within seconds with the right tone, asks the right qualifying questions, and offers two earliest viable slots from the dispatcher board. Pick a slot and the job appears on the board with the right service type, urgency tag, estimated duration, and tech assignment based on availability + skills.
2. AI dispatch optimizer with reasoning per assignment
Calendar-grid dispatcher board with 8 jobs across 4 techs (Mike Reyes Master HVAC, Tony Brennan Journeyman HVAC, Diana Park Master plumbing, Rashid Coleman Master electrical) β each with current location, parts on the truck, and skill profile. Click Optimize the day β pure-function optimizer scores assignments on weighted skill-fit + parts-fit + drive-score + (1 minus OT-risk) + load-balance, and streams plain-English reasoning per move (Mike already has the 3-ton condenser on his truck and is 6 minutes from the Hopkins job; tighter fit than sending Tony from across town. Saves 23 min drive time, avoids OT after 5pm.). Tech positions animate on the map fragment via CSS transitions. Manually override any assignment to see the COST (extra drive time, OT risk, parts mismatch warnings).
3. Customer comms through completion + maintenance batch + audit log
Click any active job β 8-touch SMS timeline runs in fast-forward (booking confirm β day-before β on-the-way with live ETA countdown β arrived β mid-job scope-change with line-item approve/reject β completion summary β payment link β review request β but ONLY if the NPS prediction is positive (>= 7); otherwise auto-routes to the service-recovery queue with a manager-callback flag and the human-readable reason). Generate this week’s outreach for 12 maintenance-due customers β segment-aware drafts (membership / one-off / cold-at-risk) stream in with projected pipeline impact (12 reminders to 4 booked tune-ups to ~$1,200 + 3 likely upsells). Audit log captures every action.
60-second Loom
75-90s flow: HVAC dispatcher board with 8 jobs / 4 techs / map fragment / integration strip, click intake scenario AC-stopped-working, AI text-back streams + 2 slot offers, pick a slot, Linda Hopkins URG card lands on Mike’s column at 1:30pm, click Optimize the day, impact panel (28 min saved, 1 parts-mismatch resolved) + reasoning panel (Tony to Mike with parts/drive justification) + tech-dot positions glide on map, click Marcus Webb job, comms timeline runs in fast-forward, all 7 touches, NPS 8.4, review request fires, click Brandon Cole job, mid-job scope-change adds $480, NPS 5.2, internal recovery SMS instead of review, switch to Maintenance, 12 reminders generate, segmented Membership 5 / One-off 4 / Cold 3, projected 4 booked / $1,200 / 3 upsells, toggle vertical to Plumbing, entire dashboard re-keys, scenarios swap to Pipe burst + Water heater quote, tagline updates, mobile view at 375px shows bottom-tab nav and horizontally-scrollable board.
See the dollar impact for your numbers
5 inputs → get hours saved/yr, dollars saved/yr, and payback vs. our $9,990 – $25k range. Results show on this page and the breakdown plus build spec hit your inbox.
Detailed breakdown plus the build-spec PDF have been sent to your email.
Who it’s for
Trades shop owners running on ServiceTitan / Jobber / Housecall Pro who want AI to handle the boring parts (intake, dispatch optimization, customer comms, follow-ups) AND trade-tech founders building vertical SaaS for a specific trade who need an AI ops layer baked in. Same architecture serves both. Built for HVAC, plumbing, electrical, roofing, and pest control β vertical toggle re-keys the entire UI for whichever trade the operator visits in.
Tech under the hood
Frequently asked questions
How does the dispatch optimizer actually choose assignments?
Pure-function score per (job, tech) pair: weighted skill-fit + parts-fit + drive-score + (1 minus OT-risk) + load-balance. Greedy assignment in priority order (urgent first, longest-duration tiebreak). Manual-override surface re-runs the same scorer to show parts-mismatch / drive-time / OT warnings before the shop owner confirms. Production builds extend with calendar-conflict checks and customer-preference weighting (preferred tech, language, gender).
Where does the LLM actually live?
The demo streams pre-written paragraphs from the seed (deterministic playback, zero credentials, zero cost). In a real engagement we wire the streaming endpoints (intake conversation, dispatch reasoning, customer message drafting, maintenance reminders) to Claude or GPT with a server-side proxy, retrieval over the shop’s prior tickets / customer history for tone calibration, and a redaction layer for PII (especially payment + address data) before any external call.
Does it integrate with ServiceTitan / Jobber / Housecall Pro / QBO / Twilio / Stripe?
Not in the demo β out of scope per the brief. In production we wire to the relevant FSM stack via REST: ServiceTitan + Jobber + Housecall Pro for the dispatch board sync; QuickBooks Online for invoice + payment write-back; Twilio for actual SMS dispatch; Stripe + Plaid for payment links + ACH; Mapbox or Google Maps for live tech GPS. Adding a new FSM adapter typically takes 3-5 days; the optimizer + comms layer is FSM-agnostic.
How does the NPS-gated review-vs-recovery routing work?
Each job carries a predictedNps field computed at completion from a small set of signals (technician on-time arrival, mid-job scope-change presence + magnitude, customer-message sentiment trail, completion time vs. estimate). Scores >= 7 fire the review-request SMS in the standard timeline (8th touch); scores < 7 route to a service-recovery internal ticket with a manager-callback-required flag and a human-readable reason (customer mentioned tech ran 35min late and seemed annoyed in mid-job message). Production builds replace the seeded NPS prediction with an actual model trained on the shop's historical NPS responses.
Want one of these in your business?
We’ll scope, build, and hand off a production-ready system in 3β4 weeks.
