ENGINEERING STORY

AI Voice Assistant + Healthcare Scheduling

What looked like an AI receptionist became a workflow system that thinks like a clinic.

8 min read

TwilioDeepgramAWS LambdaNode.jsExpressCalendlyEvent Driven ArchitecturePrompt Engineering

Conversation Flow

PC

Patient Call

VU

Voice Understanding

Patient Speech

Tomorrow AfternoonNext WeekEarliest Slot

AI RECEPTIONIST

Natural Conversations

Business Rules

Real-Time Scheduling

Appointment CreatedConfirmation SentCalendar Updated
AV

Availability Check

AC

Appointment Confirmed

Patients book anytime

No waiting until office hours.

Staff interruptions reduced

Routine calls handled automatically.

Availability checked instantly

No guessing or double bookings.

Every booking follows rules

AI cannot invent appointments.

We Thought We Were Building An AI Receptionist

When we first started working on the project, the idea sounded simple.

Healthcare providers were missing calls. Staff spent too much time scheduling appointments. Patients often had to wait until business hours.

The obvious answer seemed to be an AI voice assistant. Answer calls. Book appointments. Save time.

Simple enough. Or so we thought.

Once we started studying how clinics actually operate, we realized answering the phone was the easy part.

The difficult part was making the assistant behave like a trained receptionist.

And that's where things got interesting.

Booking Appointments Sounds Easier Than It Really Is

People don't speak in calendar dates.

Nobody says:

"I need March 16th at 2 PM."

Instead they say:

  • "Tomorrow afternoon."
  • "Early next week."
  • "Ten days from now."
  • "Do you have anything in the morning?"

Humans understand this naturally. Computers don't.

Before checking availability, the assistant first had to understand what the patient actually meant.

Only then could scheduling begin.

Conversations Are Messy

Patients rarely provide everything at once.

They change dates. Add preferences later. Remember details halfway through. Sometimes they change their mind entirely.

We wanted the assistant to handle these situations naturally.

But unrestricted AI introduces risk. It could hallucinate. Invent appointments. Promise unavailable slots.

That wasn't acceptable.

We needed more than a chatbot. We needed conversations with guardrails.

We Stopped Thinking About AI

Eventually we changed our question.

Instead of asking:

"How do we make AI sound smart?"

We asked:

"How would a receptionist handle this?"

That changed everything. The assistant followed a process.

  • Understand the request.
  • Check availability.
  • Offer alternatives.
  • Collect information.
  • Verify details.
  • Then create the booking.

Natural conversations on the surface. Strict workflows underneath.

Availability Became The Real Product

Patients don't care how intelligent AI sounds. They care whether they can actually get an appointment.

Whenever someone requested a time, the system checked scheduling APIs in real time.

If the slot existed, it booked immediately. If not, alternatives were suggested.

  • Earliest appointment.
  • Morning only.
  • Next week.
  • Closest available.

The conversation continued until something worked.

No holds. No transfers. No staff involvement.

Understanding Human Language Was Surprisingly Hard

Relative dates became one of the hardest problems.

  • Tomorrow afternoon.
  • Next Friday.
  • Early next week.
  • Ten days from now.

Before scheduling anything, those phrases had to become exact timestamps.

Once we solved that problem, conversations became natural.

Patients could simply talk. The system handled the complexity.

Making Everything Feel Like A Phone Call

Behind the scenes several systems worked together.

  • Twilio handled audio.
  • Deepgram converted speech to text.
  • AWS orchestrated workflows.
  • Scheduling APIs checked availability.
  • Notification services confirmed appointments.

Patients never saw any of that.

To them it simply felt like talking to someone.

Which was exactly what we wanted.

We Realized We Weren't Building A Voice Bot

Eventually we realized we weren't building AI.

We were building availability. We were building accessibility. And we were building time.

Patients no longer waited until business hours. Missed calls no longer meant lost appointments.

Staff no longer answered repetitive questions all day.

The AI wasn't replacing people. It was giving people their time back.

System Architecture

Patient Call

Twilio Media Streams

Deepgram Speech-To-Text

Conversation State Engine

Business Rules

Scheduling APIs

Appointment Created

Notifications Sent

How The System Handles Edge Cases

Relative Date Understanding

Convert human language into exact times.

Controlled Conversation States

Prevent hallucinations and invalid bookings.

Real-Time Availability

Always work with live schedules.

Alternative Suggestions

Unavailable slots become conversations, not dead ends.

Confirmation Workflows

Patients receive automatic notifications.

24/7 Accessibility

Appointments happen even when staff is offline.

Tech Stack

Twilio

Communication

TwilioTwilio Media Streams
Deepgram

Speech & AI

DeepgramPrompt EngineeringConversation Workflows
AWS

Cloud Infrastructure

AWSAWS LambdaS3CloudWatch
Node.js

Backend

Node.jsExpress

Integrations

Scheduling APIsCalendlyEmail Notifications

Architecture

Event Driven WorkflowsControlled Conversational StatesBusiness Rule ValidationReal-Time Audio Streaming

Patients just make a phone call.

Everything else happens automatically. We design AI systems that combine natural conversations with real business workflows, so teams spend less time answering phones and more time helping people.