AI agent for HVAC company
← Back to writing

verticals

AI agent for HVAC company | Nidrosoft

AI agent for HVAC company shops in San Diego: intake, dispatch holds, and review follow-up. Sample transcript. Book a free 15-minute AI readiness call.

Cyriac Ndo Zeh

An AI agent for HVAC company in San Diego takes job type and ZIP, then writes a dispatch hold a person still accepts. Nidrosoft is the San Diego studio of Cyriac Ndo Zeh, a design engineer who implements AI for small and mid-size businesses: audits, custom builds, phone and receptionist agents, training, and systems the team can own.

Written by Cyriac Ndo Zeh, Founder of Nidrosoft — 12+ years building software and AI products for San Diego small businesses. Also on LinkedIn.

Key takeaways

  • The pain is a published number that rings while Truck 1 is in Clairemont and on-call is in an El Cajon pocket. Quotes and no-cools look the same at 11 p.m. if nobody splits them.
  • Three use cases: lead intake, scheduling on the board you already run, follow-up and reviews after the job.
  • Grounded time band for a solo or tiny shop: 8-12 hours a week on those loops. Measure the board after thirty days.
  • Common software: ServiceTitan, Housecall Pro, Jobber, Service Fusion, FieldEdge, Successware, Dispatch, ServiceM8.
  • Transcript below is an invented illustration, not a client. Public systems: Omnira Dental, Eviction Wizard, TokenTra, Nexuvo.
  • Book a free 15-minute AI readiness call. Workshops: AI workshop for small businesses.

Contents

The board, not a call center

HVAC in this county is a board of trucks, ZIPs, and job types. Truck 1 is in Clairemont on a no-cool. Truck 2 is in a Kearny Mesa lot waiting on a part. The on-call phone is in a pocket in El Cajon. The published number still rings.

An agent that does not read that board is a note-taker. An agent that promises “someone is on the way” without a human accept is a liar. The product job is narrower: classify the job, collect the fields the board needs, write a window the board already treats as bookable, or page on a phrase the owner listed.

Same-day tools such as Rosie, Goodcall, Smith.ai, and Voksha can take a name and email the owner the afternoon you sign up. FrontDesk and DentalAssist are the wrong shape unless you also run a clinic. Praise the home-service tools for speed. Leave them when the note has to become a job on a zoned board with drive buffers.

Drive buffers are the San Diego tax. I-15, I-8, I-805, and the coastal crawl on a Friday change whether a 2 p.m. Oceanside slot is real if the truck is in Chula Vista. The agent should not compute traffic science. It should use the zone and duration the dispatcher already configured.

Job types are not synonyms. No-cool, no-heat, leak, noise, maintenance, and quote consume different trucks and different parts. A model that maps everything to “HVAC visit” will send a maintenance run at a no-cool.

The pillar for the write path is AI implementation for small business. A sibling trade with the same board shape is AI agent for plumber. East County automation texture lives on AI automation El Cajon.

Use case 1: lead intake

Intake fields that pay: job type, ZIP, power status, callback, window, language, membership, gate code. Keys: JobType, Zip, PowerOn, Callback, LanguagePref, MemberFlag, AccessNotes, UrgencyFlag.

Collect job type and ZIP before loyalty stories. A membership customer still waits behind a no-cool if your written rule says emergencies first. Priority is a written rule. The agent does not freelance revenue.

Spanish shows up on the same board. South Bay no-cool in August is often Spanish-first. A confirmation in English loses the window. If on-call is English-only, say so and keep Spanish capture plus a morning bilingual callback if you staff one.

Quotes at 10 p.m. do not page. Filter requests do not page. Gas smell and carbon monoxide alarms are off-board redirects: leave and call the utility or emergency services if that is your counsel-approved script. This page is not legal advice.

A new construction lead is JobType=Quote, not a truck. A warranty callback needs PriorJobId if you have it. The agent should ask once. Kearny Mesa lots are loud. Ask each field once.

Use case 2: scheduling

Scheduling is a hold on ServiceTitan, Housecall Pro, Jobber, or the board you already run. The agent offers windows the dispatcher configured. It does not create a second emergency truck. It does not say “we will be there in an hour” unless a human accepted the page.

After-hours buckets stay boring. Page now: listed safety phrases, no-cool with a medical-risk flag you already ask on paper, active water if you service that. Morning hold: everything else that can take the reserved 7 a.m. run.

July and September are not January. Review the phrase list when the season turns. A no-cool phrase that pages in October will make the on-call person quit. A no-heat list that is empty in December will make the morning book look like you slept through the night.

Carlsbad and Oceanside tourism weekends are a different clock than a Kearny Mesa Tuesday. Saturday morning holds exist. Sunday often does not. The agent must not promise Sunday if the board is closed.

Named-person requests: “I only want Dave” waits for a human. The agent does not invent Dave’s Saturday.

Identify the agent as automated. If you record, California two-party consent is a counsel question. If you text the tech or the caller, TCPA is a counsel question.

Use case 3: follow-up and reviews

Follow-up is the estimate that died in the truck group text, the part-pending callback, and the review ask after a completed job. Reviews mean Google and Yelp, plus the membership renewal the office already scripts.

Fields: EstimateStatus, LastTouchAt, OwnerUserId, ReviewAskAt, DoNotContact. The unofficial path is often a spreadsheet in the passenger seat. If that is the only system, Embed takes longer. The first write may be a structured mailbox, then the CRM row.

The agent queues the review ask. A person still deletes the ask if the job went badly. Automating a five-star request after a callback failure is how you buy one-star nights.

Estimate follow-up caps attempts. East County trades close from the truck, then rebuild the inbox at night. LastTouchAt is the discipline. Workshops have been run in La Mesa if the leftover is teaching the office how to reject a bad demo. Buy AI workshop for small businesses for that leftover. Buy a build for the queue.

Technician text-back is a second system: a short field SMS, not a novel. Job type, address, window, access. The tech should not receive a paragraph while merging onto I-8.

How an AI agent for HVAC company dispatch works in San Diego

San Diego texture is the dispatch rule. Inland heat east of I-15. Coastal nights milder and still producing no-cool calls from people who sleep badly. Winter no-heat in a Clairemont bungalow with a baby is a different row than a filter request from a Carlsbad rental at 11 p.m. Encinitas and Del Mar houses still call after hours. They are not a VIP type unless you sell that. La Mesa and El Cajon nights run hotter inland. Chula Vista callers may only be reachable after a late shift. Collect the callback that works at 7 a.m.

Military families move on orders. Mark DoNotContact or Transferred. A maintenance plan that texts a dead number will annoy people who already left.

Fit is usually 30-250 people, plus a 9-person shop if the after-hours line is already a shared mailbox with a script. Under 30, the later build has to pay for itself.

Typical bands: readiness call free; scoped audit often low thousands; first custom agent often mid four- to five-figure depending on ServiceTitan access, Spanish, and after-hours rules. A $50/mo receptionist SaaS plan is a different leftover. This page is not a quote.

Cyriac sits with the dispatcher. 12+ years, 125 products shipped, 16 public. Formerly Anthropic, Microsoft (Bing and Edge), Intuit, Gap Inc. Method: Embed, Diagnose, Scope, Build, Own. No junior bench.

Public work you can open is not an HVAC testimonial. Omnira Dental is a queue. Eviction Wizard is a packet. TokenTra is spend. Nexuvo is outreach volume (3x inventory, 80% less outreach). Use them as shipped systems, not as invented five-star quotes from a Kearny Mesa owner.

Sample caller and agent transcript

Invented illustration. Not a real client. Ten exchanges.

Caller: My AC died. It’s 92 inside. Can you come now? I’m in Chula Vista.

Agent: This is the automated line for the shop. I can take the job and a window. I cannot promise a truck until a dispatcher accepts. What is the ZIP, and is this a no-cool, a noise, or a quote?

Caller: 91910. No-cool. The fan runs, no cold air. I only speak Spanish after this, okay?

Agent: I will keep the rest of this call and the confirmation in Spanish. Is anyone in the home with a medical risk you already list on paper, and is the breaker on?

Caller: Breaker is on. My mom has a breathing machine. Please hurry.

Agent: I will set UrgencyFlag and page on-call using your medical-risk phrase. I will not say a truck is on the way until a person accepts. Is 619-555-0198 the callback, and is Spanish still correct for the text?

Caller: Yes. Don’t send me marketing.

Agent: DoNotContact for marketing. SMS only for this job. I have a reserved 7 a.m. run if on-call cannot accept. Do you accept sunrise if tonight is full?

Caller: Sunrise is fine if tonight fails. Gate code 2288.

Agent: Logged gate 2288, JobType=NoCool, ZIP 91910, medical-risk flag, Spanish confirmation. A person still accepts the page. If they decline, you will get a Spanish text for 7 a.m.

Caller: How much?

Agent: I cannot quote after-hours. A person gives the diagnostic fee when they accept. Do you want the membership script now, or only the truck?

Caller: Only the truck. Thanks.

Agent: Page sent. No membership pitch. Wait for the human accept or the 7 a.m. hold. Goodbye.

The agent did not invent a 60-minute arrival. Membership did not jump the emergency. Language stayed Spanish. A person still accepts the truck.

HVAC dispatch software

ServiceTitan: common for larger shops. Price book, membership, dispatch board. Partner API access can be the feasibility item in week two.

Housecall Pro and Jobber: common for smaller shops. Calendar, estimates, reviews. The unofficial path is still a group text.

Service Fusion, FieldEdge, Successware, Dispatch, ServiceM8: other boards we will not replace as the first AI step.

Phones: the published number on RingCentral, Nextiva, or the cell that should not be the board.

We will not migrate your dispatch platform in a six-week project. Anyone who offers that swap as the first AI step is selling a conversion.

If the board cannot accept a hold, the first write may be a structured SMS to the dispatcher plus a morning row. Diagnose says so. Do not discover it in August.

Hours back and the phrase list

A solo shop often sees 8-12 hours a week return when nights stop mixing quotes with no-cools and the estimate inbox stops being a Sunday rebuild. That is a planning band, not a promise. A 20-truck shop should measure on-call pages avoided and holds that exist at 7 a.m.

The phrase list is the product. Review it when the season turns. Identify the agent. Keep DoNotContact. Keep one language per booking.

Technician text-back stays short. Owner text-back can wait for morning unless the phrase list pages.

Keys in your vault. Prompts next to the code. Nerlude exists because founders lose credentials in chat. Own means the dispatcher can revoke the guest account and still close Tuesday.

We will not take “prioritize revenue” without a written rule. We will not take five agents in month one. We will not take a brief that forbids the clipboard in the truck. We will not invent testimonials.

Intake field table the dispatcher can mark before week one.

Field Why it pays Human still does
JobType Truck and parts Overrides a bad map
Zip Zone and drive buffer Moves a window when I-8 dies
UrgencyFlag Page versus 7 a.m. Accepts the emergency truck
LanguagePref Confirmation that holds Bilingual callback if on-call is English-only
MemberFlag Only if your rule says so Priority policy
AccessNotes Gate, dog, stairs Safety call

Season phrase list, reviewed when the weather turns. Summer: no-cool pages on the medical-risk phrase; quotes wait. Winter: no-heat pages on the listed safety phrase; filter requests wait. Shoulder months: page less. A phrase that pages in October will burn the on-call person.

El Cajon and La Mesa nights run hotter inland. A 4:30 yard close to beat I-8 means the unofficial path starts in the truck. Embed there. The city automation page is AI automation El Cajon.

Octana, Guidera, and Protectron are public studio systems. They are not ServiceTitan. The write sits on the board you already run.

Frequently asked questions

Will an AI agent for HVAC company book a truck without us?

It can write a hold the board already treats as bookable. It can page on a phrase you listed. A person still accepts emergency trucks. It will not say someone is on the way without that accept. Quotes and filters wait for morning unless you wrote otherwise.

How much time do shops get back?

Plan on 8-12 hours a week for a small shop on intake, after-hours split, and estimate follow-up, then measure. Do not copy Nexuvo or TokenTra percentages onto a no-cool list. Those are different jobs.

What dispatch software do you work with?

ServiceTitan, Housecall Pro, Jobber, and peers you already pay for, when access is real. The audit records API or export limits. A full platform migration is out of scope for the first agent.

Is the sample call real?

No. It is an invented illustration of gates, Spanish, and a medical-risk page. Open Omnira Dental, Eviction Wizard, TokenTra, and Nexuvo if you want public systems.

Do you train the office on ChatGPT too?

Yes as a separate leftover. Workshops have been run in La Mesa. Book AI workshop for small businesses for judgment. Book a build for the board.

Obey the board you already run

If you can name job type, ZIP, and who accepts the page, book the call. If the unofficial path is a clipboard in the truck, say that. Embed starts there.

Book a free 15-minute AI readiness call. Write cyriac@nidrosoft.com or use https://calendar.app.google/GCtfuTx3Ms6K7d579. Bring the phrase list if you have one, the board login owner, and a night of call recordings. The agent collects. The dispatcher still owns the truck.

Ready to start

Know where you stand. Then build the next system.

Tell us how work moves today. We show where the gap is and what to ship first.

Book a free audit