Company project
AI Voice Receptionist
A conversational AI phone system designed to handle incoming calls and assist with common customer enquiries.
- Speech recognition
- Conversational AI
- Text-to-speech
- Phone integration
- Customer information capture
- Workflow integration
The problem
Many businesses rely on the phone for enquiries and appointments, but calls arrive at busy moments, outside working hours or while staff are with other customers. A missed call is often a missed opportunity.
Most callers ask from a familiar set of questions — availability, timings, booking a slot — which makes this part of the conversation well suited to a carefully designed voice system.
Our solution
We built a conversational voice receptionist that answers incoming phone calls, understands what the caller says, replies in natural speech and completes defined tasks such as checking availability and booking an appointment.
The system focuses on routine enquiries, so the team can spend their time on the conversations that genuinely need them.
How it works
- 01
The call connects
The telephony provider answers the call and streams the caller's audio to our server in real time over a WebSocket.
- 02
The system listens
Turn detection waits until the caller finishes speaking, then the audio is transcribed with speech-to-text.
- 03
It understands and acts
A language model interprets the request and, when needed, calls tools such as ‘check availability’ or ‘book appointment’.
- 04
It replies
The response is converted to natural speech and streamed back to the caller.
Architecture & workflow
- Phone call
- Telephony audio stream
- Turn detection
- Speech-to-text
- LLM + tools
- Text-to-speech
- Caller
Features
Real-time audio streaming
Bidirectional audio between the phone network and the AI pipeline.
Natural turn-taking
Detects when the caller has finished speaking before replying.
Speech in, speech out
Speech-to-text and text-to-speech around a conversational core.
Tool calling
Checks availability and books appointments as structured actions.
Independent call sessions
Each call has its own session, so concurrent calls never mix.
Date-aware scheduling
Understands phrases such as ‘tomorrow’ or ‘next Friday’.
Technology stack
- Telephony
- Plivo Voice APIBidirectional audio streaming (WebSockets)
- Speech
- Whisper speech-to-textNeural text-to-speech
- AI
- LLM with tool calling (via Groq)
- Backend
- Node.jsExpressG.711 μ-law codec & resampling
Screenshots & demo
Screenshots and a demo walkthrough will be added here.
Want to see it sooner? Ask us for a live demo.
Challenges
Bridging audio formats
Phone networks carry 8 kHz μ-law audio, while speech models expect different formats. We wrote the encoding, decoding and resampling layer that sits between them.
Knowing when the caller has finished
Replying too early cuts people off; replying too late feels unnatural. Turn detection only starts its silence countdown once real speech has been heard.
Understanding dates
Language models have no built-in sense of ‘today’. Supplying the current date in context lets the receptionist interpret relative dates correctly.
Never leaving silence
Occasionally a model returns malformed output instead of a clean tool call. Guards strip this out and fall back to a polite clarifying question, so a caller is never left waiting in silence.
What we learned
- In voice, latency and turn-taking shape the experience as much as the intelligence of the model.
- Defensive handling of model output is essential when that output is spoken aloud.
- Telephony infrastructure is best left to established providers; the value lies in the conversation design and the business workflow behind it.
Want something similar? Talk to us.
Tell us about the process you want to improve, and we'll help work out what makes sense.
Start a Project