Kasuta oma numbreid (VoIP, API)

Demonumbrid sobivad prototüüpimiseks, kuid tootmisliiklus peaks kasutama sinu enda VoIP-teenusepakkuja kaudu kuuluvaid numbreid. See juhend selgitab kolmeetapilist voogu: testi mandaate → loo ühendus → impordi numbrid → kinnita.

Toetatud teenusepakkujad

Teenusepakkujaprovider IDMärkused
TwiliotwilioAPI-võti + saladus
TelnyxtelnyxAPI-võti; juhendatud liitumine on saadaval (setup_method: guided_telnyx)
SignalWiresignalwireVarsti saadaval — ühenda praegu käsitsi seadistatud SIP-i kaudu
VonagevonageVarsti saadaval — ühenda praegu käsitsi seadistatud SIP-i kaudu
Käsitsi seadistatud SIPmanualMis tahes SIP-trunk — kasuta oma konfiguratsiooni

1. Testi mandaate

Enne püsiva VoIP-ühenduse loomist kontrolli teenusepakkuja mandaate, et kinnitada nende toimimist. See tagastab verification_evidence_id, mille edastad loomise etapis, et mandaatide testimise eest ei võetaks tasu kaks korda.

curl -X POST https://api.thunderphone.com/v1/voip-connections/test \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "provider":    "telnyx",
    "credentials": { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":  { "domain": "acme.sip.telnyx.com" }
  }'
{
  "status": "pass",
  "verification_evidence_id": "b9a2...",
  "suggested_connection_name": "Telnyx: Acme Main (+15550001234)",
  "checks": {
    "credentials_valid": true,
    "inbound_reachable": true,
    "outbound_authorized": true
  }
}

Kui mõni kontroll nurjub, on vastuse status väärtus fail ja checks näitab, milline etapp ebaõnnestus. Paranda teenusepakkuja-poolne konfiguratsioon (trunki määramine, IP-lubatud loend, väljaminevate kõnede autoriseerimine) ja proovi uuesti.

2. Loo ühendus

Edasta äsja saadud verification_evidence_id:

curl -X POST https://api.thunderphone.com/v1/voip-connections \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "name":         "Acme Telnyx Main",
    "provider":     "telnyx",
    "setup_method": "api_key",
    "credentials":  { "apiKey": "KEY...", "connectionId": "123456" },
    "sip_config":   { "domain": "acme.sip.telnyx.com" },
    "verification_evidence_id": "b9a2..."
  }'

Vastus on VoipConnectioni objekt olekus status="connected". Mandaadid salvestatakse serveripoolel ja neid ei tagastata järgnevates GET-päringutes kunagi lihttekstina — vahetamiseks käivita uus test ja tee PATCH uute tõenditega.

3. Loetle ja impordi numbrid

Kontrolli mandaatidele nähtavaid numbreid, mis ei ole veel ThunderPhone'i organisatsioonis:

curl https://api.thunderphone.com/v1/voip-connections/5/available-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Seejärel impordi soovitud numbrid:

curl -X POST https://api.thunderphone.com/v1/voip-connections/5/import-numbers \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"numbers": ["+15550001234", "+15550009999"]}'

Iga import muutub sinu organisatsioonis telefoninumbri ressursiks väärtustega source="voip" ja status="provisioning".

4. Kontrolli iga imporditud numbrit

Importimine registreerib numbri saadaolevana; kõnede tegelik suunamine selle kaudu nõuab edasi-tagasi kinnitamist (sissetuleva kõne kontroll + väljamineva kõne autoriseerimise test).

curl -X POST https://api.thunderphone.com/v1/phone-numbers/{id}/verify-voip \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY"

Õnnestumisel muutub voip_verification_status väärtuseks verified ja number saab oleku status="active". Ebaõnnestumisel kirjeldab vastus täpselt, mis nurjus — paranda see (sageli puudub teenusepakkuja juhtpaneelil trunk'i määrang) ja proovi uuesti.

5. Määra agendid ja alusta kõnet

Kui number on kinnitatud, määra sissetulevate / väljaminevate kõnede agendid samamoodi nagu demonumbrile. Vaata Sissetulevate kõnede haldamine ja Väljaminevate kõnede tegemine.

Mandaatide vahetamine

Kui teenusepakkuja võti vahetub, käivita uuesti testi-ja-seejuures-uuenda töövoog:

# 1. Test the new credentials
curl -X POST https://api.thunderphone.com/v1/voip-connections/test ...

# 2. PATCH the connection with the new evidence
curl -X PATCH https://api.thunderphone.com/v1/voip-connections/{id} \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "credentials": { "apiKey": "NEW_KEY..." },
    "verification_evidence_id": "fresh-evidence-id"
  }'

Ühendus jääb alles — numbreid pole vaja uuesti importida.


Järgmised sammud