Hoe bouw je in 2026 je eigen AI-belplatform?
De complete stackgids — LLM, STT, TTS en de draaglaag die in de meeste tutorials wordt overgeslagen.
In 2024 was een AI die een telefoongesprek voerde een noviteit. Tegen 2026 is het standaard onderdeel van de bedrijfsinfrastructuur. AI-oproepen De platforms verzorgen de inkomende support, kwalificeren leads, plannen afspraken, innen betalingen en voeren uitgaande campagnes uit – allemaal zonder dat er een menselijke medewerker aan de lijn is.
De meeste bedrijven kopen deze functionaliteit kant-en-klaar bij platformen zoals Vapi, Bland AI of Retell. Maar een groeiend aantal bedrijven – bureaus, telecomresellers, SaaS-ontwikkelaars en grote ondernemingen met een hoog belvolume – bouwt het zelf. Waarom?
- Kosten. Op grote schaal rekenen beheerde platforms $0.07–$0.15 per minuut inclusief alle kosten. Bouw je je eigen infrastructuur, dan kost hetzelfde gesprek $0.02–$0.04.
- Controle. Je kiest elk onderdeel zelf: LLM, spraak, telefonie, routeringslogica.
- Concurrentie voordeel. Uw belinfrastructuur wordt een uniek concurrentievoordeel, geen standaarddienst die elke concurrent zomaar kan afnemen.
Deze handleiding beschrijft de complete architectuur: wat elke laag doet, welke tools je moet gebruiken, hoe ze met elkaar verbonden zijn en – cruciaal – de infrastructuurlaag van de provider die in de meeste handleidingen wordt overgeslagen, maar die bepaalt of je platform daadwerkelijk op grote schaal werkt.
De vier lagen van elk AI-belplatform
Voordat je gereedschap kiest, moet je de verschillende onderdelen van de gereedschapsstapel begrijpen. AI-oproepen Het platform – of je het nu zelf bouwt of koopt – draait op vier lagen die in een bepaalde volgorde werken:
Caller's phone
│
▼
[Layer 1] Telephony / Carrier
│ SIP trunk, PSTN gateway, DID numbers
▼
[Layer 2] Speech-to-Text (STT)
│ Transcribes caller audio in real time
▼
[Layer 3] LLM (Large Language Model)
│ Understands intent, decides response
▼
[Layer 4] Text-to-Speech (TTS)
│ Converts response to natural voice audioT
│
▼
Back to caller
Audio stroomt continu in twee richtingen. De beller spreekt → STT transcribeert → LLM genereert een antwoord → TTS synthetiseert audio → de beller hoort het antwoord. Uw server coördineert alle vier de lagen in realtime. Het doel is een totale doorlooptijd van minder dan 800 ms tussen het moment dat de beller stopt met praten en het moment dat de agent begint te praten. Bij een doorlooptijd van meer dan 1,000 ms gaat de beller ervan uit dat de verbinding is verbroken.
Laten we elke laag opbouwen.
Laag 1: Telefonie — De basis die iedereen onderschat
Dit is de laag waar de meeste tutorials snel aan voorbijgaan met "gebruik". Twilio"En ga verder. Het is ook de laag die je kosten per minuut bepaalt, je audiokwaliteit en of je AI-agent natuurlijk of robotachtig klinkt."
Wat deze laag doet:
- Ontvangt inkomende oproepen van echte telefoonnummers (PSTN).
- Routeert uitgaande gesprekken naar elke gewenste bestemming.
- Streamt audio naar uw server via WebSocket of SIP.
- Geeft de telefoonnummers weer die uw bellers bellen.
Je hebt twee opties:
Optie A — Beheerde telefonie (Twilio, enz.)
Snel op te zetten. Betaal de gangbare CPaaS-tarieven ($0.013/min+ uitgaand, platformkosten daarbovenop). Uitstekend geschikt voor prototyping en kleine volumes. Bij meer dan 100,000 minuten per maand lopen de kosten snel op.
Optie B — Directe SIP-trunk (aanbevolen voor productieomgevingen)
Verbind uw platform rechtstreeks met een groothandel in SIP-terminatie. Lagere tarieven per minuut, volledige controle over de routering, geen platformopslag. Configuratie duurt slechts 10 minuten. Bespaart 30-60% bij schaalvergroting.
Voor productieomgevingen is IDT Express de aanbevolen dragerlaag.
IDT Express is een groothandel in spraakafhandeling, ondersteund door IDT Corporation (NYSE: IDT) – een van 's werelds grootste groothandels in spraakdiensten met meer dan 25 jaar ervaring in de transportinfrastructuur. SIP-kanalen en stem beëindiging geeft je AI-oproepen platform:
- Platina routes — G.711 ongecomprimeerde audio, vertraging van minder dan 3 seconden na het bellen, specifiek geoptimaliseerd voor AI-spraakagenttoepassingen waarbij de codeckwaliteit direct van invloed is op de nauwkeurigheid van spraak-naar-spraak.
- Meer dan 1,000 CLI-routes In meer dan 200 landen kan uw platform vanaf dag één wereldwijd bellen en gebeld worden.
- DID-nummers in meer dan 140 landen — Geef uw agenten direct via API echte lokale telefoonnummers in elke markt.
- Elastische gelijktijdigheid — schaalbaar van 10 tot meer dan 10,000 gelijktijdige gesprekken zonder voorafgaande configuratie
- ROEREN / SCHUDDEN Gesigneerd Uitgaande gesprekken worden ondertekend met attestatieniveau A, waardoor spamlabels die de responspercentages negatief beïnvloeden, worden voorkomen.
SIP-configuratie (werkt met elk SIP-compatibel framework):
SIP Server: sip.idtexpress.com
Transport: TLS (recommended) or UDP
Codec: G.711 ulaw (PCMU) — critical for AI workloads
Authentication: Digest auth with your IDT Express credentials
DTMF: RFC 2833Codetaal: CSS (css)Ontvang uw SIP-gegevens gratis via idtexpress.com/sign-upDe inloggegevens zijn direct na registratie beschikbaar — er is geen verkoopgesprek nodig.
Laag 2: Spraak-naar-tekst — Luister naar uw bellers
De STT-laag zet de audio van de beller om in tekst die uw LLM kan verwerken. Voor AI-bellen via de telefoon is dit lastiger dan het lijkt: telefoongeluid werkt op 8 kHz mulaw, niet op de 16 kHz PCM die de meeste audiotools verwachten.
Belangrijkste vereisten voor STT-telefonie:
- Native ondersteuning voor 8 kHz mulaw (geen resamplingstap = lagere latentie)
- Streaming transcriptie (woord voor woord terwijl de beller spreekt, niet nadat hij/zij is gestopt)
- Mediaan latentie van minder dan 300 ms
- Nauwkeurigheid van alfanumerieke tekens — telefoonnummers, bevestigingscodes, e-mailadressen
- Ruisbestendigheid — telefoonlijnen hebben achtergrondruis en compressieartefacten.
Aanbevolen opties:
| leverancier | Wachttijd | Best voor |
|---|---|---|
| Deepgram Nova-2 | ~200ms | Productie, beste prijs/prestatieverhouding |
| AssemblyAI Universeel-3 | ~307ms | Hoogste nauwkeurigheid bij alfanumerieke tekens |
| OpenAI Whisper (gehost) | ~400ms | Algemeen gebruik, eenvoudige integratie |
| Google STT-streaming | ~250ms | Meertalig, zakelijk |
Voor de meeste AI-belplatformen is Deepgram Nova-2 de standaardkeuze: het accepteert van nature 8 kHz mulaw, levert een P50-latentie van ongeveer 200 ms en heeft een uitstekende nauwkeurigheid bij het soort gestructureerde gegevens dat bellers telefonisch delen (nummers, codes, adressen).
Snelle integratie (Python, Deepgram):
import deepgram
dg_client = deepgram.Deepgram(DEEPGRAM_API_KEY)
async def transcribe_stream(audio_stream):
response = await dg_client.transcription.live({
'encoding': 'mulaw',
'sample_rate': 8000,
'model': 'nova-2',
'interim_results': True,
'endpointing': 300,
})
# Send audio chunks as they arrive from your SIP/WebSocket layer
async for chunk in audio_stream:
response.send(chunk)
Codetaal: Python (python)Laag 3: Het LLM-brein — Claude voor AI Calling
Het LLM-systeem ontvangt de getranscribeerde tekst van de beller, behoudt de context van het gesprek, bepaalt wat er vervolgens gezegd moet worden en roept optioneel externe tools aan (uw CRM, agenda, betalingssysteem).
Waarom Claude voor AI-bellen?
Claude (Anthropic) is om verschillende redenen, specifiek voor gebruiksscenario's voor spraakgestuurde communicatie, een sterke keuze gebleken voor LLM's:
- Instructie volgend — Claude volgt nauwgezet de complexe systeeminstructies die het agentprofiel, het gespreksverloop, de escalatieregels en het gebruik van tools definiëren. In een gesprekssituatie is het een groot probleem als een agent van het script afwijkt. Claude houdt zich aan de instructies op een voorbeeldige manier.
- Beknopte antwoorden — Claude geeft doorgaans kortere, meer conversatieachtige antwoorden als hij daartoe correct wordt aangemoedigd — essentieel voor spraak, waar lange antwoorden onnatuurlijk aanvoelen en vertraging in de tekst-naar-spraak veroorzaken.
- Gebruik van gereedschap — De functieaanroep van Claude (via de API voor toolgebruik) verzorgt realtime zoekopdrachten — zoals het controleren van de beschikbaarheid in de agenda, het opvragen van CRM-gegevens en het verifiëren van de orderstatus — op betrouwbare wijze en met de juiste JSON-opmaak.
- Context met meerdere beurten — zorgt ervoor dat de samenhang van het gesprek gedurende het hele gesprek behouden blijft, zonder eerdere uitwisselingen te "vergeten".
Modelselectie voor bellen:
- Claude Haiku — laagste latentie (~150 ms), het meest geschikt voor eenvoudige inkomende gegevensstromen (FAQ, routering, afspraakbevestiging)
- Claude Sonnet — evenwichtige latentie en reactiesnelheid, het meest geschikt voor de meeste beltoepassingen
- Claude Opus — Vereist de hoogste kwaliteit van redenering en dient alleen te worden gebruikt wanneer de complexiteit van het gesprek dit vereist (complexe verkoopgesprekken, onderhandelingen).
Systeempromptstructuur voor een bellende agent:
You are [Agent Name], a [role] for [Company].
PERSONALITY: [tone, style — e.g., "professional but warm, concise"]
YOUR GOAL: [primary objective — e.g., "qualify inbound leads and book a demo"]
CALL FLOW:
1. Greet caller by name if available
2. Identify their need in one open question
3. [flow logic...]
4. If you cannot resolve: transfer to human agent
RULES:
- Keep all responses under 3 sentences
- Never fabricate information — if unsure, say so
- Always confirm before taking any action (booking, updating records)
- End the call professionally if the caller asks to stop
TOOLS AVAILABLE:
- check_calendar(date, time) → returns availability
- create_booking(name, email, date, time) → books appointment
- lookup_customer(phone_number) → returns CRM recordCodetaal: CSS (css)Laag 4: Tekst-naar-spraak — De stem van uw agent
De TTS-laag zet Claude's tekstantwoord om in natuurlijk klinkende audio die naar de beller wordt teruggestuurd. De kwaliteit van de stem heeft hier direct invloed op het vertrouwen van de beller in uw medewerker en op de mate waarin hij of zij met hem of haar communiceert.
Belangrijkste vereisten:
- Streaming TTS (begin met afspelen voordat het volledige antwoord is gegenereerd — vermindert de latentie met ongeveer 40%)
- Generatie van de eerste byte met lage latentie (<300 ms)
- Natuurlijke prosodie — pauzes, nadruk, ritme
- Telefooncompatibele uitgang (8 kHz of converteerbaar)
Aanbevolen opties:
| leverancier | Spraakkwaliteit | Wachttijd | Best voor |
|---|---|---|---|
| Elf Labs | Hoogst | ~250ms | Klantgericht, premium |
| Cartesia | Uitstekend | ~100ms | Latentiegevoelig bellen |
| OpenAI TTS | Heel goed | ~300ms | Eenvoudige integratie, consistent |
| Azure Neural TTS | Heel goed | ~200ms | Ondernemend, meertalig |
Voor AI-belplatformen heeft Cartesia met name aan populariteit gewonnen vanwege de latentie van de eerste audiobyte van minder dan 100 ms. Dit is belangrijk wanneer de agent direct na de verwerking moet beginnen met spreken.
Orchestratie: De vier lagen met elkaar verbinden
Je server is de orchestratielaag — de WebSocket-brug die audio tussen de telefonie en je AI-pipeline routeert. Twee belangrijke frameworks:
Pipecat (open source, aanbevolen)
from pipecat.pipeline.pipeline import Pipeline
from pipecat.services.deepgram import DeepgramSTTService
from pipecat.services.anthropic import AnthropicLLMService
from pipecat.services.cartesia import CartesiaTTSService
from pipecat.transports.network.fastapi_websocket import FastAPIWebsocketTransport
async def run_agent(websocket):
transport = FastAPIWebsocketTransport(websocket)
pipeline = Pipeline([
transport.input(), # Audio in from SIP/WebSocket
DeepgramSTTService(), # Speech to text
AnthropicLLMService( # Claude LLM
model="claude-sonnet-4-20250514",
system=SYSTEM_PROMPT
),
CartesiaTTSService(), # Text to speech
transport.output() # Audio out to caller
])
await pipeline.run()Codetaal: Python (python)LiveKit Agents (open source, voor grotere schaalbaarheid) Het meest geschikt wanneer u duizenden gelijktijdige gesprekken via WebRTC en SIP moet afhandelen. Meer infrastructuurkosten, maar aanzienlijk betere beheermogelijkheden voor gelijktijdige gesprekken.
Alles samenvoegen: de complete architectuur
Caller dials DID number (IDT Express)
│
▼
IDT Express SIP Trunk
(G.711 audio, Platinum route)
│
▼
Your SIP Gateway / WebSocket Server
(Pipecat or LiveKit orchestration)
│ │
▼ ▼
Deepgram STT Cartesia TTS
(transcribe) (synthesise)
│ ▲
▼ │
Claude Sonnet (Anthropic)
(understand + decide + respond)
│
▼
Tool calls (CRM, calendar, payments)Budget voor end-to-end latentie (doel: minder dan 800 ms):
- Telefonie naar server: ~50 ms (IDT Platinum-route)
- STT (Deepgram): ~200 ms
- LLM (Claude Sonnet): ~200ms
- TTS eerste byte (Cartesia): ~100 ms
- Server naar telefonie: ~50 ms
- Totaal: ~600 ms ✓
Uw platform schalen
Zodra uw proof-of-concept met één agent werkt, is voor opschaling het volgende nodig:
Gelijktijdige oproepen: Elk gesprek wordt in een eigen proces/container uitgevoerd. IDT Express SIP-trunks zijn schaalbaar – er is geen voorafgaande configuratie nodig. Schaal uw rekenkracht (niet uw provider) op om pieken in het gebruik op te vangen.
Globaal bereik: IDT Express DID-nummers Met een dekking in meer dan 140 landen kan uw platform lokale gesprekken in elke markt accepteren zonder dat u per land aparte contracten met providers hoeft af te sluiten. Eén account, één API, wereldwijde dekking.
Kostenoptimalisatie op grote schaal:
- Gebruik Claude Haiku voor eenvoudige oproeptypen (bespaart ongeveer 70% op LLM-kosten in vergelijking met Sonnet).
- IDT Express Instant-routes voor bulkcampagnes uitgaande e-mails (laagste tarieven per minuut)
- IDT Express Platinum-routes voor inkomende gesprekken met klanten (kwaliteit is belangrijk voor klantbehoud)
- Cache TTS voor veelgebruikte zinnen (begroetingen, wachtberichten) — bespaart circa 15% op de TTS-kosten
ROEREN/SCHUDDEN: Alle uitgaande gesprekken via IDT Express worden automatisch ondertekend met STIR/SHAKEN. Voor AI-belplatformen is dit niet onderhandelbaar: niet-ondertekende gesprekken worden steeds vaker door grote providers als spam aangemerkt, waardoor uw responspercentage bij uitgaande gesprekken daalt nog voordat uw medewerker iets heeft gezegd.
Aan de slag: uw checklist voor het samenstellen van uw stack
| Bestanddeel | Aanbevolen gereedschap | Tijd om alles klaar te zetten |
|---|---|---|
| Vervoerder / SIP-trunk | IDT Express | 10 minuten |
| DID-nummers | IDT Express | Direct via API |
| STT | Deepgram Nova-2 | 15 minuten |
| LLM | Claude Sonnet (Anthropic API) | 10 minuten |
| TTS | Cartesia of ElevenLabs | 15 minuten |
| orkestratie | Pipecat | 30 minuten |
| beneden | AWS/GCP + Docker | 1-2 uur |
Realistische tijdlijn:
- Werkend prototype: 1-2 dagen
- Productiemiddel voor eenmalig gebruik: 1-2 weken
- Compleet platform voor meerdere toepassingen met analyses: 4-8 weken
Veelgestelde Vragen / FAQ
V: Kan ik een AI-belplatform bouwen zonder programmeerervaring? A: Niet realistisch gezien op het infrastructuurniveau dat hier beschreven wordt. Voor no-code-opties zijn Vapi, Bland AI en Synthflow speciaal daarvoor ontwikkelde, beheerde platforms. Als je je eigen platform wilt bouwen en een ontwikkelteam hebt, beschrijft deze handleiding alles wat je nodig hebt.
V: Waarom is de audiocodec belangrijk voor AI-bellen? A: AI-spraak-naar-tekst-engines presteren aanzienlijk beter op ongecomprimeerde G.711-audio dan op gecomprimeerde G.729-audio. Gecomprimeerde codecs introduceren artefacten die de transcriptienauwkeurigheid met wel 15% verminderen, waardoor de invoer van uw LLM verslechtert en de reacties van de agent minder goed zijn. IDT Express Platinum-routes gebruiken standaard G.711.
V: Hoe kom ik aan telefoonnummers voor mijn AI-belplatform? A: IDT Express biedt DID-nummers (Direct Inward Dialing) in meer dan 140 landen, die via een API kunnen worden geactiveerd. De nummers worden direct geactiveerd. U kunt ze toewijzen aan inkomende gespreksstromen, aan specifieke AI-agenten geven of gebruiken voor uitgaande nummerweergave.
V: Moet mijn AI-belplatform voldoen aan de STIR/SHAKEN-standaard? A: Ja, voor uitgaande gesprekken naar de VS. De FCC-regelgeving vereist STIR/SHAKEN-ondertekening voor alle uitgaande gesprekken. IDT Express regelt dit automatisch: al het uitgaande verkeer wordt ondertekend met attestatieniveau A. Niet-conforme uitgaande gesprekken worden door grote providers steeds vaker als 'waarschijnlijk spam' bestempeld.
Volgende stappen
Als je klaar bent om te bouwen:
- Maak een gratis IDT Express-account aan. — ontvang je SIP-gegevens en $25 gratis tegoed. Het duurt slechts 60 seconden.
- Meld je aan voor toegang tot de Anthropic API — Je Claude API-sleutel is direct beschikbaar op console.anthropic.com
- Installeer Pipecat — Installeer pipecat-ai met pip en voer de quickstart uit.
- Maak je eerste AI-gesprek — een werkend prototype in minder dan een dag
Voor de carrierlaag — de infrastructuur die uw AI verbindt met het echte telefoonnetwerk — IDT Express spraakafhandeling en SIP-kanalen Het is speciaal ontworpen voor AI-spraaktoepassingen: inclusief G.711-audio, flexibele gelijktijdigheid, wereldwijde DID-nummers en STIR/SHAKEN-compatibiliteit.


