ThunderPhone 2.0 ఇప్పుడు అందుబాటులో ఉంది.మీరే ప్రారంభించవచ్చు—నిమిషానికి 2¢ నుంచి.ప్రకటనను చదవండి

Developer cookbook

అవుట్‌బౌండ్ కాల్‌లను చేయండి (API)

మీ స్వంత కోడ్ నుండి AI ఆధారిత అవుట్‌బౌండ్ కాల్‌ను ట్రిగ్గర్ చేయండి — సర్వే, ఫాలో-అప్ లేదా నిర్ధారణ ఫ్లోల కోసం.

అవుట్‌బౌండ్ కాలింగ్ ద్వారా మీరు గమ్యస్థాన నంబర్ మరియు ఏజెంట్ కాన్ఫిగరేషన్‌ను ThunderPhoneకు అందించి, మీ తరఫున AIతో కాల్ చేయించవచ్చు. సాధారణ వినియోగ సందర్భాలు:

  • అపాయింట్‌మెంట్ నిర్ధారణలు
  • సర్వే తిరిగి కాల్‌లు
  • మిస్డ్ కాల్ తర్వాత "రెండో ప్రయత్నం" ఫాలో-అప్‌లు
  • డిస్పాచ్ తరహా నోటిఫికేషన్‌లు

ముందస్తు అవసరాలు

  1. ఒక VoIP నంబర్‌ను తీసుకురండి

    అవుట్‌బౌండ్ కాలింగ్ కోసం మీరు from_numberను VoIP కనెక్షన్ ద్వారా స్వంతంగా కలిగి ఉండాలి. ThunderPhone నంబర్‌లు ఇన్‌బౌండ్‌కు మాత్రమే అందుబాటులో ఉంటాయి. చూడండి: మీ స్వంత నంబర్‌లను తీసుకురండి.

  2. ఏజెంట్‌ను సృష్టించండి

    అవుట్‌బౌండ్‌కు అనుగుణమైన promptలో సాధారణంగా ఏజెంట్ తనను తాను మరియు తన ఉద్దేశ్యాన్ని పరిచయం చేసుకోవడం ఉంటుంది — "హాయ్, రేపు మధ్యాహ్నం 3 గంటలకు ఉన్న మీ అపాయింట్‌మెంట్‌ను నిర్ధారించడానికి Acme నుంచి కాల్ చేస్తున్నాను…" outbound_speak_orderను agent_firstగా సెట్ చేయండి (డిఫాల్ట్).

  3. పాజిటివ్ బ్యాలెన్స్‌ను ఉంచండి

    బ్యాలెన్స్ ≤ $0.00 అయితే అవుట్‌బౌండ్ కాల్‌లు 402 Payment Requiredను తిరిగి ఇస్తాయి. దీని ద్వారా టాప్ అప్ చేయండి: POST /v1/billing/top-up లేదా ఆటో-రీలోడ్ను ప్రారంభించండి.

సేవ్ చేసిన ఏజెంట్‌తో కాల్ చేయండి

అత్యంత సులభమైన మార్గం — 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
  }'

ప్రతిస్పందన:

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

ఇన్‌లైన్ కాన్ఫిగ్‌తో కాల్ చేయండి

ఏజెంట్‌గా సేవ్ చేయడం అవసరం లేని ఒకసారి ఉపయోగించే prompt కావాలంటే, బదులుగా configను పంపండి. దీని ఆకృతి 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"
    }
  }'

కాల్‌ను అనుసరించండి

సమాంతరంగా, telephony.complete వెబ్‌హుక్కు సబ్‌స్క్రైబ్ అవండి — కాల్ పూర్తయిందని తెలుసుకోవడానికి ఇదే వేగవంతమైన మార్గం. మీరు ఇన్‌బౌండ్ వెబ్‌హుక్‌లను స్వీకరించలేకపోతే, ప్రతి కొన్ని సెకన్లకు GET /v1/calls/{call_id}ను పోలింగ్ చేయండి; కాల్ ముగిసిన తర్వాత రికార్డ్‌లో end_reason, duration_seconds, మరియు రికార్డింగ్ URL ఉంటాయి.

నిర్వహించాల్సిన వైఫల్య రకాలు

లోపంపరిష్కారం
402 Payment Requiredబ్యాలెన్స్‌ను టాప్ అప్ చేయండి లేదా ఆటో-రీలోడ్‌ను ప్రారంభించండి
403 అవుట్‌బౌండ్ నిరోధించబడింది (ThunderPhone నంబర్)బదులుగా ఒక VoIP నంబర్‌ను తీసుకురండి
403 అవుట్‌బౌండ్ నిరోధించబడింది (ధృవీకరించని VoIP)POST /v1/phone-numbers/{id}/verify-voipను అమలు చేయండి
404 from_number is not registered to this organizationfrom_number మీరు స్వంతంగా కలిగి ఉన్న ఫోన్ నంబర్‌తో సరిపోతుందో నిర్ధారించండి
502 Bad Gatewayతాత్కాలిక SIP / LiveKit వైఫల్యం; రీట్రై చేయడం సురక్షితం

హోల్డ్ సమయాన్ని నియంత్రించడం

కాల్ స్వీకరించే వ్యక్తి నెమ్మదిగా స్పందించడం వల్ల ఎక్కువసేపు కొనసాగే అవుట్‌బౌండ్ కాల్‌లను (IVR ట్రీలు, క్యూలు) max_hold_secondsతో పరిమితం చేయవచ్చు:

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

గత N సెకన్లలో మానవ ఆడియో అందకపోతే ఏజెంట్ కాల్‌ను ముగిస్తుంది. డిఫాల్ట్ 900 (15 నిమిషాలు).


తదుపరి దశలు