> This is a page from the ElevenLabs documentation. For a complete page index, fetch https://elevenlabs.io/docs/llms.txt. For the full documentation in a single file, fetch https://elevenlabs.io/docs/llms-full.txt.

# Sinch SIP-trunking

> **Note**
>
> Overweeg voordat je deze handleiding volgt eerst de [ElevenLabs-handleiding voor SIP-trunking ](/docs/nl/eleven-agents/phone-numbers/sip-trunking) en de [Sinch Voice-handleiding voor SIP-trunking ](https://developers.sinch.com/docs/voice/api-reference/sip-trunking) te lezen.

## Overzicht

In deze handleiding wordt uitgelegd hoe je een Sinch Voice-applicatie rechtstreeks met ElevenLabs Agents verbindt. Met de integratie behoud je je Sinch-nummers en routering, terwijl ElevenLabs de ervaring met de voice AI-agent verzorgt.

## Hoe SIP-trunking met Sinch werkt

Een Sinch SIP Trunk is een tweerichtingsverbinding tussen het Sinch-netwerk en het ElevenLabs-platform:

1. **Inkomende gesprekken**: Een aan je Sinch Voice-applicatie toegewezen DID ontvangt een gesprek. Sinch stuurt de `INVITE` naar het ElevenLabs-originationadres dat als statisch endpoint is geconfigureerd in de inkomende instellingen van de trunk.
2. **Uitgaande gesprekken**: Gesprekken die door ElevenLabs worden gestart, worden naar het SIP-adres met fully qualified domain name (FQDN) van je applicatie gestuurd, dat Sinch naar het PSTN routeert.
3. **Authenticatie**: Sinch vereist authenticatie voor uitgaande gesprekken (SIP-credentials) en ondersteunt ACL-authenticatie (IP-allowlisting) voor verkeer dat op de trunk binnenkomt.

## Vereisten

Controleer voordat je begint of je het volgende hebt:

1. Een actief ElevenLabs-account met een geconfigureerde agent
2. Een Sinch-account met een voice-applicatie die is gemaakt in het [Sinch Build-dashboard](https://dashboard.sinch.com/voice/apps)
3. Minstens één telefoonnummer (DID) dat je in Sinch hebt aangeschaft en aan de applicatie hebt toegewezen

## Inkomende gesprekken configureren (Sinch naar ElevenLabs)

Wijs de doorschakeling van gesprekken voor je applicatie naar het ElevenLabs SIP-adres.

### Log in bij het Sinch Build-dashboard

Log in bij je Sinch-account en ga naar de applicatie die je wilt verbinden.

### Voeg een statisch endpoint voor ElevenLabs toe

Werk in de instellingen voor het doorschakelen van gesprekken van de applicatie de handler voor call events bij naar `SIP Forwarding` en voeg een statische SIP-URI toe die is gericht op het ElevenLabs-originationadres:

* **DID**: het Sinch-telefoonnummer dat je wilt bellen
* **Adres**: `sip.rtc.elevenlabs.io`
* **Poort en transport**: `5061/TLS`, `5060/TCP`

Bijvoorbeeld: `sip:15551234567@sip.rtc.elevenlabs.io:5061;transport=tls`.

Als je ElevenLabs-workspace een geïsoleerde data residency-regio of de statische IP-SIP-infrastructuur gebruikt, gebruik dan het bijbehorende endpoint in plaats van `sip.rtc.elevenlabs.io`. Zie [data residency](/docs/nl/overview/administration/data-residency) voor beschikbare regio's.

### Wijs je DID aan de applicatie toe

Wijs het telefoonnummer dat je agent moet bereiken aan deze applicatie toe.

## Uitgaande gesprekken configureren (ElevenLabs naar Sinch)

Voor uitgaande gesprekken stuurt ElevenLabs een SIP-`INVITE` naar je Sinch-applicatie en authenticeert het zich daartegen.

### Noteer de FQDN van je Sinch-regio

Haal de [SIP FDQN](https://developers.sinch.com/docs/voice/api-reference/sip-trunking#termination-uris) van je Sinch-regio op. Dit is het terminationadres dat je in ElevenLabs invoert. Voer alleen de hostname in, zonder het voorvoegsel `sip:`.

### Voer SIP-credentials in

Kopieer de key en secret van je Sinch-applicatie veilig. Deze gebruik je in ElevenLabs als gebruikersnaam en wachtwoord.

### Doorschakelnummer

Je Sinch-applicatie schakelt het gesprek door naar het doorschakeladres. Om een uitgaand gesprek te voeren naar het nummer dat is opgegeven in de aanvraag voor uitgaande gesprekken, laat je dit veld leeg in de instellingen van je applicatie.

## Installatie in ElevenLabs voltooien

### Importeer het telefoonnummer van de SIP-trunk

Volg de [handleiding voor SIP-trunking](/docs/nl/eleven-agents/phone-numbers/sip-trunking) om je Sinch-nummer te importeren met deze instellingen:

| Instelling              | Waarde                                                                                      |
| ----------------------- | ------------------------------------------------------------------------------------------- |
| Telefoonnummer          | Je Sinch DID, bijvoorbeeld `15551234567`                                                    |
| Transporttype           | TLS                                                                                         |
| Mediaversleuteling      | `Disabled` voor TCP; `Allowed` of `Required` wanneer de trunk is ingesteld voor TLS en SRTP |
| Adres                   | De FQDN van je Sinch-trunk, alleen hostname                                                 |
| SIP-trunkgebruikersnaam | Key van de Sinch-applicatie                                                                 |
| SIP-trunkwachtwoord     | Secret van de Sinch-applicatie                                                              |

Houd de transport- en versleutelingsinstellingen aan beide kanten consistent.

### Wijs een agent toe

Wijs een agent toe aan het nummer in het [Phone Numbers-dashboard](https://elevenlabs.io/app/agents/phone-numbers). Inkomende gesprekken naar de DID bereiken nu die agent.

### Test een uitgaand gesprek

Plaats vanuit de agent een gesprek via je Sinch-applicatie, via het telefoonnummermenu of de API voor uitgaande gesprekken:

```bash
curl -X POST https://api.elevenlabs.io/v1/convai/sip-trunk/outbound-call \
  -H "xi-api-key: $ELEVENLABS_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "agent_id": "agent_7101k5zvyjhmfg983brhmhkd98n6",
    "agent_phone_number_id": "phnum_8901k4t9z5defmb8vh3e9361y7nj",
    "to_number": "+15551234567"
  }'
```

Zie [Uitgaand gesprek via SIP-trunk](/docs/nl/eleven-agents/api-reference/sip-trunk/outbound-call) voor het volledige requestschema en [Batchgesprekken](/docs/nl/eleven-agents/phone-numbers/batch-calls) voor het uitvoeren van uitgaande campagnes.

## Transfers configureren

Agents dragen gesprekken over aan een persoon via de systeemtool [`transfer_to_number`](/docs/nl/eleven-agents/customization/tools/system-tools/transfer-to-number).

> **Warning**
>
> Alleen conference transfers werken via een Sinch-trunk. SIP REFER en blind transfers mislukken.

### Conference transfers

ElevenLabs belt de bestemming via je Sinch-trunk, voegt beide partijen samen in een conference en verbreekt vervolgens de verbinding met de agent.

## Gebruik in plaats daarvan Sinch Voice API v2

Met de bovenstaande installatie krijgt ElevenLabs het volledige voicepad. Als je wilt dat Sinch de call control beheert, kan Sinch Voice API v2 een gesprek beantwoorden, eigen logica toepassen en via SVAML zonder relayserver een tweede verbinding met je ElevenLabs-agent overbruggen. Dit model past beter wanneer je Sinch-functies zoals voicemaildetectie, gespreksopname of nummerafscherming wilt invoegen voordat de agent deelneemt, of wanneer de agent één stap is in een grotere Sinch-callflow.

Zie de tutorial van Sinch over [een ElevenLabs AI-agent integreren via SIP](https://developers.sinch.com/docs/voice-2.0/tutorials/elevenlabs-sip) voor andere gebruikelijke scenario's.

## Problemen oplossen

#### Inkomende gesprekken maken geen verbinding

* Controleer of het statische inkomende endpoint van de trunk is gericht op `sip.rtc.elevenlabs.io` via de poort en het transport die je wilt gebruiken.
* Controleer of de DID aan die trunk is toegewezen.
* Controleer of het nummer in ElevenLabs overeenkomt met wat Sinch verstuurt, inclusief de voorloop-`+`.
* Wacht na het wijzigen van endpoints of ACL's minimaal 60 seconden en test vervolgens opnieuw.
* Controleer of je firewall SIP-signaling op 5060 voor TCP of 5061 voor TLS toestaat en RTP niet blokkeert.

#### Uitgaande gesprekken ontvangen reacties 403 of 407

* Controleer of de SIP-trunkgebruikersnaam en het wachtwoord in ElevenLabs overeenkomen met de credentials op de Sinch-trunk.
* Controleer of het veld **Adres** alleen de FQDN van de trunk bevat, zonder het voorvoegsel `sip:`.
* Controleer of de landspecifieke rechten op de trunk zijn ingeschakeld voor het land van bestemming.
* Controleer of de caller ID die je presenteert een nummer is dat Sinch voor die trunk accepteert.
* Als je ACL-authenticatie gebruikt, houd er dan rekening mee dat ElevenLabs-signaling afkomstig is van een gedistribueerde pool van adressen. Schakel over op digest authentication of gebruik de statische IP-infrastructuur.

#### Audio in één richting of geen audio

* Controleer of je firewall RTP via UDP in beide richtingen toestaat en niet is beperkt tot specifieke statische adressen.
* Controleer of mediaversleuteling overeenkomt: een TLS Sinch-trunk verwacht SRTP, dus stel mediaversleuteling in ElevenLabs in op `Allowed` of `Required`.
* Test met TCP en uitgeschakelde mediaversleuteling om te bepalen of het probleem verband houdt met TLS of SRTP.
* Controleer of G711 op de trunk wordt aangeboden. ElevenLabs ondersteunt G711 en G722.

#### Gesprekken worden niet beëindigd nadat de agent ophangt

Een `481`-reactie op een `BYE` betekent meestal dat de aanvraag een SIP-server bereikte zonder de dialog state voor dat gesprek. Stuur in-dialog-aanvragen naar de `Contact`-URI die wordt teruggegeven in de `200 OK`, in plaats van naar het gedeelde adres `sip.rtc.elevenlabs.io`. Als `BYE` of `REFER` via TLS de certificaatvalidatie niet doorstaat, voeg je de FQDN waarvoor het certificaat van je trunk is uitgegeven toe aan het veld **Remote domains** in de telefoonnummerinstellingen.

## Veelgestelde vragen

#### Welk transport moet ik gebruiken?

Gebruik voor productie TLS op 5061, gekoppeld aan SRTP-media op de Sinch-trunk. TCP op 5060 is een redelijk beginpunt voor validatie. UDP is experimenteel bij ElevenLabs en mag niet voor productieverkeer worden gebruikt.

#### Welke audiocodecs zijn compatibel?

ElevenLabs ondersteunt G711 (8 kHz) en G722 (16 kHz). Zorg dat G711 op de Sinch-trunk wordt aangeboden als gemeenschappelijke basis.

#### Hoe geef ik bellercontext door aan het gesprek?

Aangepaste `X-`-headers op de inkomende `INVITE` worden beschikbaar gemaakt als dynamische variabelen. Zo wordt `X-Contact-ID` bijvoorbeeld `{{sip_contact_id}}`. `X-Call-ID` en `X-Caller-ID` worden toegewezen aan `system__call_sid` en `system__caller_id`. Zie [SIP-trunking](/docs/nl/eleven-agents/phone-numbers/sip-trunking) voor de volledige normalisatieregels.

## Handige links

* [Handleiding voor SIP-trunking](/docs/nl/eleven-agents/phone-numbers/sip-trunking)
* [SIP-referentie](/docs/nl/eleven-agents/phone-numbers/sip-reference)
* [Transfer naar nummer](/docs/nl/eleven-agents/customization/tools/system-tools/transfer-to-number)
* [Sinch Voice API v2: een ElevenLabs AI-agent integreren via SIP](https://developers.sinch.com/docs/voice-2.0/tutorials/elevenlabs-sip)