See it work
Hear the voice AI agent handle two real calls.
Scenario: a travel agency’s phone line. The agent takes the enquiry; people step in only when needed.
Play a call, or jump to a stage.Sample call — Happy Path
Follow the call
- 1 · Caller gives the budget 1:34
“Yeah, I would say around 4K US dollar in total.”
- 2 · Agent checks availability 1:51✓check_trip_availability
- 3 · Saved record
- caller
- Rex
- destination
- Barcelona
- dates
- second week of October
- party
- two
- budget
- four thousand US dollars
- trip type
- cultural
- next step
- availability_
confirmed_ logged
Sample call — Escalation
Follow the call
- 1 · Caller speaks 0:40
“It’s a group of 12 of us, a few families traveling together.”
- 2 · Agent flags for review 0:47
“For a group of twelve, our specialists design the itinerary… I’ve got your destination and dates already, so they can start from there.”
✓check_trip_availability - 3 · Saved record
- caller
- Jonathan
- destination
- Rome
- dates
- April
- party
- 12
- next step
- escalated_
to_ specialist
Try it live
Talk to the agent yourself.
Play the caller. Ask about a trip of your own: try a simple request, then a complex one, and see when it flags the request for human review.
Travel concierge demo
Ready when you are
AI demo · Audio and transcript are recorded and stored for review. The demo page ends the session after 3 minutes. Use fictional details. No real bookings.
Listen to the sample calls ↑Under the hood
Availability comes from your systems, not AI guesswork.
- CallerBrowser or phone
- Voice agentPrompt and hand-off rulese.g. ElevenLabs
- Tool callFixed JSON schema
- WebhookAvailability lookup, logginge.g. Apps Script
- RecordOne row per calle.g. Google Sheet, any CRM
// what the agent sends to the webhook POST /webhook check_trip_availability { "caller_name": "Rex", "destination": "Barcelona", "travel_dates": "second week of October", "party_size": "two", "budget_range": "four thousand US dollars", "trip_type": "cultural", "recommended_next_step": "availability_confirmed_logged" }
- Every call becomes a clean record.A fixed structure your CRM can use, not a transcript someone has to read.
- No made-up availability.What the agent says about availability comes from the tool response, not the model.
- Simple calls handled, sensitive ones flagged.The agent captures routine requests; riskier or sensitive ones are flagged for human review with full context.
Trade-off: the agent closes fewer calls on its own, but the availability it quotes comes from your systems.
Tested
Tested on the calls that trip agents up.
- Standard intake
- Off-topic redirect
- Tool failure
- Asks for a human
- Hand-off after details
Related lab: how voice-agent hand-offs behave across two platforms, on GitHub ↗ · a separate build comparing ElevenLabs and OpenAI Realtime
Next
Hand routine calls to AI. Keep the ones that matter.
I can scope a pilot around your inbound calls: customer service, sales or bookings. Hiring? Happy to walk you through how this was built.
Escalation · tool request
Happy path · tool request
Saved log