An AI voice agent that answers inbound calls, books jobs, and sends confirmations — so contractors never lose revenue to a missed call.
HVAC contractors miss a large share of inbound calls — after hours, on a job, or simply busy. Each missed call is lost revenue, and most callers don't leave a voicemail; they call the next company. DispatchAnswer answers every call with an AI voice agent that sounds natural, captures the job, and books it.
- 24/7 AI call answering — natural-sounding voice agent handles inbound calls
- Job booking + calendar sync — schedules appointments directly into the contractor's calendar
- SMS confirmations — texts the customer a confirmation after booking
- Call transcription ingestion — every call transcribed and stored for review
- CRM + lead scoring — captures caller details and scores leads for follow-up
- Deployment automation — streamlined setup per new contractor
Inbound call
|
v
+--------------+ +------------------+
| Voice LLM | ---> | API orchestration|
| (Retell/Vapi)| | layer |
+--------------+ +------------------+
| | |
v v v
Transcription Calendar SMS
ingestion sync confirmations
| |
v v
+-------------------------------+
| CRM + lead-scoring pipeline |
+-------------------------------+
|
v
Database
| Layer | Technology |
|---|---|
| Voice agents | Retell AI / Vapi |
| Language models | LLMs for conversation + intent |
| Orchestration | API integration layer (Node.js) |
| Messaging | SMS provider integration |
| Scheduling | Calendar API sync |
| Data | CRM + lead-scoring pipeline, database schema |
git clone https://github.com/louisfasano/dispatchanswer.git
cd dispatchanswer
npm install
# configure your keys
cp .env.example .env
# fill in .env with your provider credentials
npm run devCopy .env.example to .env and provide your own credentials. Never commit .env.
See .env.example for the full list of required variables (voice provider keys, SMS, calendar, and database connection).
MIT — see LICENSE. (Switch to "All rights reserved" if you'd rather show the code without granting reuse.)