ThunderPhone 2.0 je tu.Začnite sami, už od 2 ¢/min.Prečítať oznámenie

Developer cookbook

Uskutočňujte odchádzajúce hovory (API)

Spustite odchádzajúci hovor riadený AI z vlastného kódu — pre prieskumy, následné kontaktovanie alebo potvrdzovacie postupy.

Odchádzajúce volania umožňujú odovzdať ThunderPhone cieľové číslo a konfiguráciu agenta, aby AI uskutočnila hovor vo vašom mene. Bežné prípady použitia:

  • Potvrdenia termínov
  • Spätné volania pri prieskumoch
  • Následné kontaktovanie na druhý pokus po zmeškanom hovore
  • Oznámenia v štýle dispečingu

Požiadavky

  1. Použite číslo VoIP

    Odchádzajúce volania vyžadujú, aby ste vlastnili from_number prostredníctvom pripojenia VoIP. Čísla ThunderPhone sú určené iba pre prichádzajúce hovory. Pozrite si Použitie vlastných čísel.

  2. Vytvorte agenta

    Výzva určená pre odchádzajúce hovory zvyčajne začína tým, že sa hlasový agent predstaví a uvedie svoj účel — „Dobrý deň, tu je Acme, voláme, aby sme potvrdili váš zajtrajší termín o 15:00…“ Nastavte outbound_speak_order na agent_first (predvolené nastavenie).

  3. Udržujte kladný zostatok

    Odchádzajúce hovory vrátia 402 Payment Required, ak je zostatok ≤ $0.00. Dobite kredit cez POST /v1/billing/top-up alebo povoľte automatické dobíjanie.

Uskutočnite hovor s uloženým agentom

Najjednoduchší spôsob — odkážte na agenta podľa id:

curl -X POST https://api.thunderphone.com/v1/call \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from_number": "+15551234567",
    "to_number":   "+14155550199",
    "agent_id":    12
  }'

Odpoveď:

{ "call_id": 987654321, "status": "initiated" }

Uskutočnite hovor s vloženou konfiguráciou

Ak chcete jednorazovú výzvu, ktorú sa neoplatí ukladať ako agenta, namiesto toho odošlite config. Štruktúra zodpovedá schéme odpovede webhooku call.incoming:

curl -X POST https://api.thunderphone.com/v1/call \
  -H "Authorization: Bearer sk_live_YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "from_number": "+15551234567",
    "to_number":   "+14155550199",
    "config": {
      "prompt":  "You are confirming Jane Doe appointment for 3pm tomorrow…",
      "voice":   "john",
      "product": "spark"
    }
  }'

Sledujte hovor

Súbežne sa prihláste na odber webhooku telephony.complete — je to najrýchlejší spôsob, ako zistiť, že hovor skončil. Ak nemôžete prijímať prichádzajúce webhooky, každých niekoľko sekúnd zisťujte stav cez GET /v1/calls/{call_id}; záznam po skončení hovoru obsahuje end_reason, duration_seconds a URL záznamu.

Stavy zlyhania, ktoré sa oplatí spracovať

ChybaRiešenie
402 Payment RequiredDobite kredit alebo povoľte automatické dobíjanie
403 odchádzajúce volania sú blokované (číslo ThunderPhone)Použite namiesto toho číslo VoIP
403 odchádzajúce volania sú blokované (neoverené VoIP)Spustite POST /v1/phone-numbers/{id}/verify-voip
404 from_number is not registered to this organizationOverte, že from_number zodpovedá telefónnemu číslu, ktoré vlastníte
502 Bad GatewayDočasné zlyhanie SIP / LiveKit; opakovanie je bezpečné

Riadenie času čakania

Odchádzajúce hovory, ktoré trvajú dlho, pretože volaný reaguje pomaly (stromy IVR, fronty), možno obmedziť pomocou max_hold_seconds:

{
  "from_number": "+15551234567",
  "to_number":   "+14155550199",
  "agent_id":    12,
  "max_hold_seconds": 120
}

Agent ukončí hovor, ak za posledných N sekúnd neprijal žiadny zvuk od človeka. Predvolená hodnota je 900 (15 minút).


Ďalšie kroky