By Sagar Shankaran, Founder of CallSphere
Production reliability patterns for AI voice agents — multi-region failover, circuit breakers, graceful degradation.
Key takeaways
When a web app is down, users refresh. When a voice agent is down, callers hear silence and hang up angry. Voice failures are extremely visible and they cascade fast: one stuck WebSocket can back up 50 concurrent calls. This post covers the reliability patterns that keep a voice agent answering when upstream providers, networks, or your own code misbehave.
failure modes
│
├── carrier outage
├── OpenAI 5xx
├── TTS provider slow
├── DB connection storm
└── bad deploy
┌──────────┐ ┌──────────────┐ ┌──────────────┐
│ Carrier A│──┐ │ Primary edge │──┐ │ Primary AI │
└──────────┘ │ └──────────────┘ │ └──────────────┘
│ │
┌──────────┐ ▼ ┌──────────────┐ ▼ ┌──────────────┐
│ Carrier B│────► │ Standby edge │────► │ Standby AI │
└──────────┘ └──────────────┘ └──────────────┘
import pybreaker
llm_cb = pybreaker.CircuitBreaker(fail_max=5, reset_timeout=30)
@llm_cb
async def call_llm(messages):
return await openai.chat.completions.create(model="gpt-4o", messages=messages)
When the breaker trips, route new calls to a fallback voice that says "we are experiencing high demand, please try again in a moment" and end the call gracefully rather than holding the line open.
flowchart TD
CALL(["Inbound Call"])
HEALTH{"Primary<br/>agent healthy?"}
PRIMARY["Primary agent<br/>LLM provider A"]
SECONDARY["Hot standby<br/>LLM provider B"]
QUEUE[("Persisted<br/>call state")]
HUMAN(["Live human<br/>fallback"])
DONE(["Caller served"])
CALL --> HEALTH
HEALTH -->|Yes| PRIMARY
HEALTH -->|Timeout or 5xx| SECONDARY
PRIMARY --> QUEUE
SECONDARY --> QUEUE
PRIMARY --> DONE
SECONDARY --> DONE
SECONDARY -->|Both fail| HUMAN
style HEALTH fill:#f59e0b,stroke:#d97706,color:#1f2937
style PRIMARY fill:#4f46e5,stroke:#4338ca,color:#fff
style SECONDARY fill:#0ea5e9,stroke:#0369a1,color:#fff
style HUMAN fill:#dc2626,stroke:#b91c1c,color:#fff
style DONE fill:#059669,stroke:#047857,color:#fff
import asyncio, random
async def retry(coro, attempts=3):
for i in range(attempts):
try:
return await coro()
except Exception:
if i == attempts - 1:
raise
await asyncio.sleep((2 ** i) + random.random())
If the knowledge-base RAG store is down, the agent should continue without it and say "let me get someone to follow up with the exact answer" rather than hallucinate.
Use Twilio's <Dial> fallback or regional stream URLs to route to your standby edge if the primary is unhealthy.
Hear it before you finish reading
Talk to a live CallSphere AI voice agent in your browser — 60 seconds, no signup.
<Response>
<Connect>
<Stream url="wss://edge-us-east.yourapp.com/twilio">
<Parameter name="fallback" value="wss://edge-us-west.yourapp.com/twilio"/>
</Stream>
</Connect>
</Response>
A /health endpoint that returns 200 when the container is up is useless. The useful one returns 200 only when the pod can reach the OpenAI Realtime API, the DB, and Redis in the last 10 seconds.
@app.get("/health")
async def health():
try:
await asyncio.wait_for(openai_ping(), timeout=2)
await asyncio.wait_for(db_ping(), timeout=2)
await asyncio.wait_for(redis_ping(), timeout=2)
return {"ok": True}
except Exception:
return Response(status_code=503)
Kill pods, drop carriers, throttle the LLM — monthly. If you have not tested a failure mode, you will discover it on a Tuesday at 3am.
CallSphere runs an active/standby model across two regions for its voice plane. The OpenAI Realtime API (gpt-4o-realtime-preview-2025-06-03) is called through circuit breakers; when they trip, inbound calls are routed to a backup flow that apologizes, logs the failure, and offers an SMS callback. Health checks validate live connectivity to OpenAI, Twilio, and the per-vertical Postgres instances before a pod is marked ready.
The multi-agent verticals — 14 healthcare tools, 10 real estate agents, 4 salon agents, 7 after-hours escalation tools, 10 plus RAG IT helpdesk tools, and the 5-specialist ElevenLabs sales pod — share the same failover plane. The OpenAI Agents SDK handles mid-call specialist handoffs and survives region failover as long as the Twilio leg stays up. CallSphere supports 57+ languages with sub-second end-to-end latency during normal operation and degrades gracefully during incidents.
99.9% is achievable with sensible failover; 99.99% requires active/active and a lot of testing.
Circuit breakers and load shedding.
Still reading? Stop comparing — try CallSphere live.
CallSphere ships complete AI voice agents per industry — 14 tools for healthcare, 10 agents for real estate, 4 specialists for salons. See how it actually handles a call before you book a demo.
Usually no — you end the current call cleanly and let the next one route to the standby region.
Keep it low (30-60s) on endpoints you need to fail over quickly.
Use network policies to block traffic to the primary region from a canary client.
Want a voice agent that keeps answering during incidents? Book a demo, read the technology page, or see pricing.
#CallSphere #Reliability #Failover #SRE #VoiceAI #CircuitBreakers #AIVoiceAgents

Written by
Sagar Shankaran· Founder, CallSphere
LinkedInSagar Shankaran is the founder of CallSphere, where he builds production AI voice and chat agents deployed across healthcare, hospitality, real estate, and home services. He writes about agentic AI, LLM engineering, and shipping voice agents that handle real calls in production.
See how AI voice agents work for your industry. Live demo available -- no signup required.
A practical guide for medical clinics and aged-care providers in Sydney, Melbourne, Auckland, and Wellington to triage after-hours calls with AI voice agents under the Privacy Act.
A 2026 look at Austrian SMBs and the tourism-driven hospitality sector in Vienna, Graz and the alpine regions. How CallSphere AI voice and chat agents handle multilingual bookings 24/7, DSGVO-compliant, in German, English and more.
Azerbaijani law firms, accountants, and real estate agencies lose clients to unanswered calls. CallSphere books consultations 24/7 in Azerbaijani, Russian, and English across Baku and Ganja.
A practical guide for automotive businesses across the Balkans to deploy a CallSphere AI voice and chat agent that books service, answers parts questions, and captures every lead in every local language.
San Pedro on Ambergris Caye runs on divers and property buyers who inquire from every time zone. See how CallSphere AI voice + chat agents answer reef-trip bookings and real estate leads 24/7 in English and Spanish.
A pain-to-solution guide for logistics operators and professional-services firms across Poland, Czechia, Hungary and Slovakia to capture cross-border calls 24/7 with a CallSphere AI agent.
© 2026 CallSphere Inc. All rights reserved.
Made within San Francisco
Watch how CallSphere handles real customer calls, schedules appointments, and processes payments — live.
Try Live DemoBook a DemoCalculate Your ROI