The voice agent that runs the whole call

A real-time speech model on the line and your production AI agent behind it — one brain answering from your knowledge base, reading live business data and taking real, verified actions. In English and Arabic, in the accent you choose.

Start a live call
Full-duplex — interrupt any timeEnglish & Arabic — accent configurable~3s to first speechBooks your demo right on the callMCP tools & knowledge basesEvaluated on every release
Voice AgentReady to call

Press start — the agent picks up in a couple of seconds and hears you through your mic.

This is a real call — pick an accent, press start, and the agent hears you through your microphone. جرّب المكالمة بالعربية ←

Try it properly

Things to ask — and ways to test it

The call card is right up top. Say any of these in your own words — or go off script entirely; interruptions, mishears and hard questions are exactly what it's built for.

Run it like your business
  • I run two salons and a spa — what would WAJ actually change day to day?
  • My no-show rate is brutal. What does WAJ do about it?
  • Can twenty stylists manage their own calendars without seeing each other's clients?
  • How would WAJ handle commissions and payroll for my team?
Try to trip it up
  • Interrupt it mid-sentence — it stops and yields.
  • Mispronounce the brand — it still knows what you mean.
  • Change your mind halfway through a question.
  • Ask it what it can't do.
Real actions, live
  • Ask it to book you a demo — it takes your name and number and actually sends the request.
  • Ask how sensitive actions like payment changes stay safe from smooth talkers.
The voice tech
  • How do you know when I've finished talking?
  • Are you a recording, or generated live right now?
  • Which languages and accents can you speak?
Numbers & reports
  • What can WAJ tell me about revenue by branch or by staff member?
  • Why do exact figures show on the screen instead of being read aloud?
Pricing & next steps
  • How is WAJ priced — and is there a free trial?
  • How long from signing up to my first online booking?
  • Can I talk to a human next?
What it does

One agent. Support, analytics and real actions.

The same production agent behind your chat picks up the phone — with everything your business already gave it: tools, data, knowledge and policy.

Support

Answers from your knowledge base

Product and process questions are answered from an embedded, vector-indexed knowledge base — not from the model's imagination. Every answer carries the source it was fetched from.

Analysis

Live business analytics

Revenue summaries, branch and staff performance, service and payment-method breakdowns — pulled through MCP tools against live data while the caller waits, with figures pushed to the screen.

Troubleshooting

Guided troubleshooting

Step-by-step help from your own guides — a booking that won't sync, a checkout that won't open — escalating to a support ticket when the steps don't resolve it.

Actions

Takes real, gated actions

Books demo calls, opens support tickets, updates account details and more — with sensitive steps verified server-side (OTP), so a flow can never be talked past the agent.

Conversation

Natural full-duplex conversation

Callers interrupt mid-sentence and are understood. Real speech is distinguished from background noise and "mm-hm" backchannels before the agent yields the floor.

Safety

Never mis-says a number

Spoken output is rendered deterministically: long numbers go to the screen, decimals are rounded for speech, tables are never read aloud — and the voice reads results verbatim, never paraphrasing.

Under the hood

A realtime voice, your agent's brain

A realtime speech model owns the ears and the mouth over one WebSocket. Your existing agent stays the brain — same prompt, same tools, same telemetry as chat.

1

The call edge

The browser or phone streams raw audio over a single WebSocket. Semantic voice-activity detection ends turns in under a second; deep noise suppression and echo cancellation are built in.

PCM16 audioSemantic VADBarge-inPlayback control
2

The realtime layer

A realtime speech model converses with exactly one tool: ask_agent. Watchdogs recover stalled turns, cancel obsolete answers by name, and re-deliver answers that never reached the caller.

One tool: ask_agentStall recoveryAnswer watchdogRelay mode for protected flows
3

The agent brain

ask_agent runs the identical turn your text chat runs — same profile, prompt, MCP tools, knowledge base, persistence and tracing. Voice and chat share one session history.

Same agent as chatMCP toolsKnowledge baseShared session

Swappable realtime providers

Azure Voice Live — nativegpt-realtime

The model hears and generates speech itself — natural, dialect-aware Arabic and English with no text-to-speech ceiling.

Azure Voice Live — cascadedSTT → LLM → TTS

Azure speech recognition and neural voices around a fast LLM — in-region, roughly 4× cheaper per minute, with named voices configurable per language.

Gemini Livenative audio

Google's realtime stack — it scored 100% exact transcription in our three-way provider bake-off, and it powers the live call on this page. Provider choice is a config row, not a rebuild.

Switching provider, model, region, voice or accent is a database row edit in the admin portal — never a redeploy.

Measured, not estimated

Numbers from live calls

Every default in the voice stack is a measurement with a date on it. These are the ones you feel on a call.

~3s
Time to first speech
sentence-streamed answers
~0.9s
Barge-in verdict
after the caller stops speaking
0.87s
End-of-turn detection
650 ms semantic VAD window
100%
Transcription bake-off
best provider, exact-match
What we measureResultWhy it matters
Interrupt cancellation33 msA named cancel stops obsolete audio almost instantly — versus 2.34 s of overhang when unnamed.
Stall recovery~0.4 sA turn that ended on "one moment" is finished, not late — a reprompt lands the owed tool call in 0.37 s.
Answer delivery → first audio0.21–0.33 sThe gap the answer watchdog polices before re-delivering an answer that never made a sound.
In-region embeddings~100 msIn-region versus ~600–800 ms cross-cloud — knowledge lookups stay off the caller's clock.
Streaming headroom~4×28 s of speech forwarded in 6 s — playback pacing, not generation, sets the tempo of the call.
Voice prompt budget−51%The voice persona was compressed from 38.7k to 19k characters with every bilingual rule preserved.
Daily voice budgetper tenantAudio seconds are metered and capped per tenant per day, with concurrency limits per identity and per IP.
Latency telemetry5 stagesEvery turn emits end-of-turn → first-audio, delegate time and more into the observability dashboard.

Figures are live measurements from our duplex voice edge and demo deployments; your numbers depend on region, provider and tools.

Built on the WAJ AI Engine

Configure. Test. Evaluate. Ship.

The voice agent isn't a black box — it's an agent profile in the WAJ AI Engine, with the same lifecycle discipline as every other agent.

1

Configure

Provider, model, voices and accents per language, VAD timing, barge-in, watchdogs, budgets — around 25 live-voice settings on the agent profile, all editable in the admin portal without a deploy.

2

Test

Deterministic voice scenarios place a real duplex call on every deploy and assert the transcript. Unit and turn-invariant suites cover every event ordering a call can physically produce.

3

Evaluate

A goal-driven LLM caller holds whole conversations with the voice agent — in simulation or over real audio — and a judge grades each rubric, with hard latency gates that clock the answer, not the holding line.

4

Optimize & ship

Promote an immutable profile snapshot, compare eval runs across variants, and let the drift check prove the live stack serves exactly the prompt and levers you think it does.

Drive it all over MCP

The engine's admin surface is itself an MCP server: ~48 tools to configure profiles, publish prompts, attach MCP servers and knowledge bases, trigger eval runs, check drift, promote and deploy. Your own agents — or Claude — can build, test and tune voice agents end to end.

update_profilepublish promptstrigger_eval_run · sim/livevoice_scenariosdrift_checkpromote_profilevoice_budgetslive_analytics

Config drift, caught

Silent levers are the failure mode of voice operations — a disabled barge-in or a stale prompt looks fine until a live call. The drift check compares what every profile actually serves against source of truth, and flags incident levers left engaged.

Connected

Tools, MCP servers and knowledge bases

The voice agent binds the same integration surface as every WAJ agent — attach a server in the portal and the tools are live on the next call.

MCP servers

Attach any MCP server and pick a tool subset per agent. Tenant credentials are injected server-side and stripped from the tool schemas — the model never sees a secret.

tool subsetsserver-side credentialsconnection pooling

HTTP action tools

Point-and-click HTTP tools configured in the portal — the demo-booking action on this page's live call is exactly this, with sensitive flows OTP-gated by the server, not the model.

portal-configuredOTP-gatedno code

Knowledge bases

Documents are ingested, chunked and embedded into a vector index; the voice agent searches them mid-call and cites what it fetched.

vector searchtop-6 retrievalin-region embeddings

Memory & data

Long-term user memory, chat history shared between voice and text, and live business data through your systems — each togglable per profile and tuned for voice latency.

shared voice + chat historyper-profile toggleslatency-aware
Bilingual by design

English and Arabic — really Arabic

Not a translation layer: the voice agent is engineered per language down to the holding lines — and the Arabic accent is a setting you choose, not a hard-coded default.

Dialect-aware speech

With the native realtime model the agent speaks natural, colloquial Arabic itself — and the accent is configurable: Gulf, Egyptian, Levantine and more, from the accents Azure Voice Live supports.

Pinned per call

The call language is fixed from your locale — a foreign brand or product name can't drag the agent into another language mid-call.

Everything localised

Holding lines, failure lines, "the figures are on your screen", empathy phrases, even hesitation sounds («ممم»، «طيب») exist per language — no English leaking into an Arabic call.

Parity, enforced

A generative test requires the English and Arabic rule sets to match rule for rule, so a one-sided prompt edit fails before it ships. Arabic speech-recognition variants are normalised, not enumerated.

Hear it in Arabic

This whole page — and the demo call — exists in Arabic with a natural Arabic voice. Switch over and try the same questions.

جرّب النسخة العربية

Put a voice on your operation

A 30-minute call: we dial the live demo agent together, walk through the admin portal, and scope what a voice agent over your data and tools would look like.

Try the on-page demo

No commitment — and bring your hardest support questions.