Sign inGet started

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, verzoek-velden, authenticatie en kosten.

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 geverifieerd beller-ID. Registreer het nummer dat je presenteert en voltooi de verificatieoproep. Zo bewijst een werkruimte dat ze eigenaar is van de nummers die ze presenteert. 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:
HeaderWat Bird ermee doet
ToHet nummer dat wordt gebeld. Bird leest het land af om een carrier te kiezen en het gesprek te prijzen
FromHet nummer dat je als beller presenteert. Het moet een geverifieerd 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. Het bronadres wordt gecontroleerd voordat Bird überhaupt een challenge stuurt, dus een gesprek vanaf een niet-vermeld adres wordt geweigerd, ongeacht de meegestuurde referenties.
  • 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:
  1. Je PBX stuurt de INVITE.
  2. Bird beantwoordt 407 Proxy Authentication Required met één challenge-regel per algoritme dat de trunk aanbiedt, standaard SHA-256 en dan MD5.
  3. Je PBX stuurt de INVITE opnieuw met een Proxy-Authorization-header berekend met gebruikersnaam bird en het geheim van de API-sleutel als wachtwoord.
  4. 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. Als de trunk ook een IP-allowlist heeft, moet het verzoek nog steeds van een vermeld adres komen.
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_balance in 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_exceeded totdat 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 vanuit de pagina Calls, of bekijk je je facturen en gebruik.

Volgende stappen

PaginaWat het behandelt
GesprekslogboekBekijken, filteren en exporteren van je gespreksrecords
Voice-eventsGespreksresultaten naar je eigen systemen laten pushen
Betaalmethoden & walletOpwaarderen, automatische opwaarderingen en hoe de wallet wordt afgeschreven

Gerelateerde bronnen

Ga verder met de documentatie, gidsen en voorbeelden voor dit onderwerp. De bronnen zijn in het Engels.

Ontvang een implementatieoverzicht