ThunderPhone 2.0 ir klāt.Sāciet uzreiz — no 2 centiem minūtē.Lasīt paziņojumu

Developer cookbook

Izmantojiet savus numurus (VoIP, API)

Pievienojiet Twilio vai Telnyx — vai jebkuru SIP maģistrāli — importējiet jums jau piederošos tālruņa numurus un ļaujiet ThunderPhone balss aģentiem atbildēt uz zvaniem un veikt zvanus, izmantojot tos.

Demonstrācijas numuri ir piemēroti prototipēšanai, taču produkcijas plūsmai jāizmanto numuri, kas jums pieder pie jūsu VoIP pakalpojumu sniedzēja. Šajā ceļvedī aprakstīta trīs darbību plūsma: testēt piekļuves datus → izveidot savienojumu → importēt numurus → verificēt.

Atbalstītie pakalpojumu sniedzēji

Pakalpojumu sniedzējsprovider IDPiezīmes
TwiliotwilioAPI atslēga + noslēpums
TelnyxtelnyxAPI atslēga; pieejama vadīta ieviešana (setup_method: guided_telnyx)
SignalWiresignalwireDrīzumā — pašlaik pievienojiet, izmantojot manuālu SIP
VonagevonageDrīzumā — pašlaik pievienojiet, izmantojot manuālu SIP
Manuāls SIPmanualJebkura SIP maģistrāle — izmantojiet savu konfigurāciju

1. Testējiet piekļuves datus

Pirms izveidojat pastāvīgu VoIP savienojumu, pārbaudiet pakalpojumu sniedzēja piekļuves datus, lai apstiprinātu, ka tie darbojas. Tādējādi tiek atgriezts verification_evidence_id, ko nododat izveides darbībai, lai par piekļuves datu testēšanu netiktu iekasēta maksa divreiz.

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" }
  }'
Response
{
  "status": "pass",
  "verification_evidence_id": "b9a2...",
  "suggested_connection_name": "Telnyx: Acme Main (+15550001234)",
  "checks": {
    "credentials_valid": true,
    "inbound_reachable": true,
    "outbound_authorized": true
  }
}

Ja kāda pārbaude neizdodas, atbildes status būs fail, un checks norādīs, kura darbība neizdevās. Izlabojiet pakalpojumu sniedzēja puses konfigurāciju (SIP maģistrāles piesaisti, IP atļauju sarakstu, izejošo zvanu autorizāciju) un mēģiniet vēlreiz.

2. Izveidojiet savienojumu

Nododiet tikko saņemto 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..."
  }'

Atbilde ir VoipConnection objekts ar status="connected". Piekļuves dati tiek glabāti servera pusē un nekad netiek atgriezti atklātā tekstā turpmākajos GET pieprasījumos — lai tos atjauninātu, veiciet jaunu test un PATCH pieprasījumu ar jaunajiem pierādījumiem.

3. Uzskaitiet un importējiet numurus

Pārskatiet numurus, kas ir pieejami ar jūsu piekļuves datiem un vēl nav ThunderPhone organizācijā:

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

Pēc tam importējiet vajadzīgos numurus:

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"]}'

Katrs imports kļūst par tālruņa numura resursu jūsu organizācijā ar source="voip" un status="provisioning".

4. Pārbaudiet katru importēto numuru

Importējot numurs tiek reģistrēts kā pieejams; lai faktiski maršrutētu zvanus caur to, nepieciešama divvirzienu pārbaude (ienākošā zvana pārbaude + izejošo zvanu autorizācijas pārbaude).

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

Veiksmīgas pārbaudes gadījumā voip_verification_status mainās uz verified, un numurs iegūst status="active". Neveiksmīgas pārbaudes gadījumā atbildē ir norādīts, kas neizdevās — novērsiet problēmu (bieži tā ir trūkstoša maģistrāles piešķiršana pakalpojumu sniedzēja vadības panelī) un izsauciet vēlreiz.

5. Piešķiriet balss aģentus un veiciet zvanu

Kad numurs ir pārbaudīts, piešķiriet ienākošo / izejošo zvanu balss aģentus tāpat kā demonstrācijas numuram. Skatiet Apstrādājiet ienākošos zvanus un Veiciet izejošos zvanus.

Akreditācijas datu rotācija

Kad pakalpojumu sniedzēja atslēga tiek nomainīta, atkārtoti izpildiet pārbaudes un pēc tam atjaunināšanas procesu:

# 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"
  }'

Savienojums paliek nemainīgs — nav nepieciešams numurus importēt atkārtoti.


Nākamās darbības