AI Voice Agent Receptionist
Qualifies real estate leads on live inbound calls.
A production ready, real time AI phone agent that autonomously qualifies real estate seller leads over live inbound Twilio calls with sub second latency.
The hard part
A phone call gives you no room to think. The agent has to sound natural while also extracting structured CRM data, and doing those in sequence blows the latency budget. I designed a parallel LangGraph agent graph where the conversational reply node and the structured extraction node run concurrently on every turn, so capturing data costs nothing in perceived response time.
The problem
Inbound seller leads go cold fast, and a human receptionist cannot answer every call at every hour. An automated agent only works if it responds fast enough that the caller does not notice it is not a person.
The approach
I designed a parallel LangGraph agent graph where a conversational reply node and a structured extraction node run concurrently on every turn, using Gemini's structured output to silently capture CRM data while holding a natural conversation.
What it does
- Live inbound call handling over Twilio Media Streams
- Parallel conversational and extraction reasoning branches
- Barge in handling so the caller can interrupt the agent mid sentence
- Streaming TTS pipeline for sub second first audio
- Full call logging and transcript persistence to PostgreSQL
Architecture
FastAPI handles the Twilio Media Streams WebSocket. Audio flows through faster-whisper for transcription into a LangGraph agent graph running on Google Gemini, and back out through a streaming Kokoro ONNX TTS pipeline. Every turn and its extracted fields are written to PostgreSQL.
Outcome
Inbound leads are qualified and logged around the clock without a human on the line, and the structured extraction means the CRM is populated by the end of the call rather than after it.
- Role
- AI / Backend Engineer
- Built at
- Magic Makers Lab, 2025
- Stack
- Python / FastAPI / LangGraph / Google Gemini / faster-whisper / Kokoro ONNX TTS / Twilio / PostgreSQL