Deeper · 03.A
From dial to dispatch.
Twilio numbers, ElevenLabs agents, Supabase records, Mailgun emails, WhatsApp messages. Every step has a reason.
The Twilio side
Each bord site has at least one Twilio DID, country-matched. plombiersgeneve.ch uses a Swiss +41. balitennislesson.com uses an Indonesian +62. The number on the site is the number Twilio rings. For Switzerland specifically, bord chains the Swiss mobile (Digital Republic eSIM, CHF 13/mo) to a +41 22 539 45 12 Twilio DID, then to ElevenLabs. So even calls to the personal Swiss number land on the AI agent.
The ElevenLabs side
ElevenLabs has nine production agents. Each agent has:
- A voice (Eric for Swiss, others per market).
- A model (gpt-4o where dispatch fidelity matters; gpt-4o-mini elsewhere).
- A prompt with FAQ and dispatch rules.
- One tool:
dispatch_lead. - An
initial_wait_time = 3sso it doesn't talk over the "hello".
No closing phrase before the tool fires. If the agent says "goodbye" before calling dispatch_lead, the lead is lost. That single rule needs explicit emphasis in the prompt.
The dispatch step
- 01dispatch_lead is calledCarries: customer name, phone, language, requested service, location.
- 02Lead row written to SupabaseStatus = pending. UTC timestamp. Source site URL. Conversion tracker linked.
- 03Provider lookupService category × city → roster query → first available match.
- 04Three-way notifyProvider gets WhatsApp template, email, SMS. Customer gets a confirmation SMS. localclark@gmail.com gets a copy of everything.
- 05Post-call summary emailElevenLabs sends a separate post-call email with full transcript, sentiment, next-step suggestion.
Failure modes
The two failure modes that actually happen: (a) the agent fires dispatch_lead but the provider phone is wrong; (b) the agent never fires dispatch_lead because the prompt got too soft. Both are caught by the quality scanner described in the parent chapter.
Production-critical: this whole pipeline runs on Vercel and Twilio, never on the founder's Mac. Lost 24h of dental leads in April 2026 when one polling job ran on launchd and the laptop slept. That rule is now hard.