Gesprekken plaatsen
Je PBX stuurt een SIP INVITE naar het SIP-domein van de trunk om een gesprek te plaatsen. Bird controleert het verzoek, routeert het naar een carrier en stuurt de audio door. Deze pagina behandelt de vereisten, verzoekvelden, authenticatie en kosten.
Gebruik de Create Call-handleiding om vanuit je applicatie via HTTP een oproep te starten. Deze route voert een gepubliceerde Bird-sequence uit nadat er is opgenomen.
Voordat je een gesprek plaatst
Vier dingen moeten klaar zijn, in willekeurige volgorde, en drie ervan stel je zelf in:
- Een trunk die je verkeer accepteert. Maak een SIP-trunk aan en schakel uitgaand bellen in. Voeg de IP-bereiken van je apparatuur toe, een toegestane API-sleutel, of beide. Clients die geen langlevend geheim kunnen bewaren, kunnen een sessiereferentie gebruiken.
- Een geschikt beller-ID. Gebruik een Bird-nummer dat momenteel is toegewezen aan deze werkruimte, of registreer een extern nummer en voltooi de verificatieoproep. Verificatie garandeert geen end-to-end-bezorging van de CLI of verbinding van het gesprek wanneer de CLI geen nummer is dat via Bird is verkregen: zie de disclaimer over CLI-verificatie en -bezorging.
- Het bestemmingsland ingeschakeld. Schakel de landen die je bedient in op de pagina Destinations.
- Routering gekoppeld aan je werkruimte. Bird stelt dit voor je in en bepaalt welke carriers welke bestemmingen bedienen. Zolang dit niet actief is, worden gesprekken geweigerd met
routing_not_configured, een van de redenen die Geweigerde gesprekken behandelt.
Wat Bird verwacht in de INVITE
Stuur het verzoek naar het SIP-domein van je trunk op een van de ondersteunde poorten. Twee headers bevatten alles wat Bird nodig heeft:
| Header | Wat Bird ermee doet |
|---|---|
To | Het nummer dat wordt gebeld. Bird leest het land af om een carrier te kiezen en het gesprek te prijzen |
From | Het nummer dat je als beller presenteert. Het moet een geschikt Bird-nummer of een geverifieerd extern beller-ID in deze werkruimte zijn |
Gebruik volledige internationale nummers in E.164-formaat, een voorloop-+ gevolgd door de landcode en het nationale nummer, in beide headers. Dat is het formaat dat Bird vastlegt bij het gesprek en dat de bestemmingsmatching verwacht.
Afgezien van die twee headers is dit een gewoon SIP-gesprek, zonder aangepaste headers in beide richtingen.
Elk gesprek authenticeren
Wat een gesprek doorloopt hangt af van hoe de trunk is geopend:
- Alleen IP-allowlist. Eén verzoek. Bird vergelijkt het bronadres met de lijst en routeert het gesprek, zonder challenge om te beantwoorden.
- Alleen toegestane API-sleutels. Bird vraagt het gesprek eerst om een wachtwoord, via de SIP Digest-uitwisseling.
- Beide. Gesprekken met een toegestane API-sleutel moeten ook van een vermeld adres komen. Ingeschakelde sessiereferenties bieden het aparte toegangspad dat hieronder wordt beschreven.
- Sessiereferenties aan. Bird daagt het gesprek uit ongeacht de herkomst, zelfs vanaf een adres dat niet op de allowlist staat, en een referentie die minuten eerder is uitgegeven beantwoordt de challenge. Apparatuur die al is toegelaten via de allowlist op een trunk zonder toegestane sleutels blijft verbinden zonder challenge.
Wanneer de trunk toegestane API-sleutels heeft, antwoordt je telefoonsysteem met een hash van het API-sleutelgeheim in plaats van het geheim zelf. Dat is wat SIP Digest-authenticatie doet:
- Je PBX stuurt de
INVITE. - Bird beantwoordt
407 Proxy Authentication Requiredmet één challenge-regel per algoritme dat de trunk aanbiedt, standaardSHA-256en danMD5. - Je PBX stuurt de
INVITEopnieuw met eenProxy-Authorization-header berekend met gebruikersnaambirden het geheim van de API-sleutel als wachtwoord. - Bird verifieert het antwoord en gaat verder met routeren.
Een preventieve Proxy-Authorization-header wordt vóór de challenge verstuurd, dus je apparatuur moet een algoritme kiezen dat de trunk aanbiedt. Bij API-sleutelauthenticatie vereist een trunk met een IP-allowlist nog steeds dat het verzoek van een vermeld adres komt.
Bird beantwoordt een mislukte handshake op de SIP-laag, dus de poging wordt afgewezen voordat het platform een gespreksrecord aanmaakt. Als je gesprekken helemaal niet in het gesprekslogboek verschijnen, controleer dan de referenties in plaats van de routering.
Gespreksattestatie
Gesprekken naar de Verenigde Staten en Frankrijk bevatten STIR/SHAKEN-attestatie. Carriers gebruiken deze handtekening bij het labelen van gesprekken. Bird past standaard niveau B toe zonder extra configuratie. Neem contact op met support om niveau A aan te vragen.
Wanneer een gesprek wordt geweigerd
Bird controleert het beller-ID, de bestemming, limieten en het walletsaldo voordat een carrier wordt gebeld. Een weigering bereikt je telefoonsysteem als SIP 503; de specifieke oorzaak staat op het geauthenticeerde gespreksrecord. Open het gesprek in het gesprekslogboek, of bekijk geweigerde gesprekken voor elke reden en oplossing.
Los de vastgelegde oorzaak op voordat je het opnieuw probeert. calls_per_second_exceeded gaat bijvoorbeeld door totdat je het beltempo verlaagt.
Noodoproepen worden niet doorgeleid
Bird Voice leidt geen oproepen naar hulpdiensten door. Een oproep naar 112, 911, 999 of elk ander alarmnummer wordt geweigerd, op elke trunk, in elk land. Je telefoonsysteem moet hulpdiensten via een andere route bereiken.
Dit gedrag hangt niet af van je abonnement, saldo of bestemmingen. Configureer je telefoonsysteem om noodoproepen te routeren via een dienst die ze ondersteunt, zoals een lokale PSTN-lijn, on-premises gateway of een andere provider. Test die route. Bird retourneert 503 voor een geweigerde noodoproep, zodat een telefoonsysteem met een alternatieve route in het kiesplan die kan proberen.
Hulpdiensten zijn afhankelijk van de geregistreerde locatie van de beller, die Bird niet opslaat voor een trunk. Vertrouw niet op een Bird-route voor noodoproepen.
Kosten en facturatie
Voice is prepaid vanuit de wallet van je organisatie, net als de andere kanalen:
- Factureerbare tijd loopt van beantwoording tot einde, ongeacht hoe lang het gesprek eerst overgaat. Het gespreksrecord toont dit naast Total duration, die loopt vanaf het moment dat Bird het gesprek ontving.
- Het tarief hangt af van het bestemmingsland. Je tariefkaart prijst elk land in de valuta van de wallet. Een tarief definieert een minimale gefactureerde tijd en het increment dat na dat minimum wordt gebruikt. Een tarief met een minimum van één minuut en increments van zes seconden factureert een gesprek van 10 seconden bijvoorbeeld als één minuut.
- De wallet wordt gecontroleerd voordat de carrier wordt gebeld. Een gesprek dat je saldo niet dekt, wordt vooraf geweigerd met
insufficient_balancein plaats van achteraf in rekening gebracht. Houd een buffer aan, of schakel automatische opwaarderingen in. - Er geldt een dagelijkse spraaklimiet. Als die is bereikt, worden gesprekken geweigerd met
daily_spend_exceededtotdat de volgende UTC-dag begint. Het bedrag hangt af van je abonnement. - Kosten verschijnen op het gesprek zodra het is getarifeerd, op volledige precisie, exclusief btw.
Om de totale uitgaven over gesprekken te berekenen, exporteer je de gefilterde gesprekslijst als CSV vanaf de pagina Legs, of bekijk je je facturen en gebruik.
Volgende stappen
| Pagina | Wat het behandelt |
|---|---|
| Gesprekslogboek | Bekijken, filteren en exporteren van je gespreksrecords |
| Voice-events | Gespreksresultaten naar je eigen systemen laten pushen |
| Betaalmethoden & wallet | Opwaarderen, automatische opwaarderingen en hoe de wallet wordt afgeschreven |
Gerelateerde bronnen
Ga verder met de documentatie, handleidingen en voorbeelden voor dit onderwerp.