ThunderPhone 2.0 ਹੁਣ ਲਾਈਵ ਹੈ।ਸੈਲਫ਼-ਸਰਵਿਸ—2¢/ਮਿੰਟ ਤੋਂਐਲਾਨ ਪੜ੍ਹੋ

Developer cookbook

ਆਊਟਬਾਊਂਡ ਕਾਲਾਂ ਕਰੋ (API)

ਆਪਣੇ ਕੋਡ ਤੋਂ AI-ਸੰਚਾਲਿਤ ਆਊਟਬਾਊਂਡ ਕਾਲ ਟ੍ਰਿਗਰ ਕਰੋ — ਸਰਵੇਖਣ, ਫਾਲੋ-ਅੱਪ ਜਾਂ ਪੁਸ਼ਟੀਕਰਨ ਫਲੋਜ਼ ਲਈ।

ਆਊਟਬਾਊਂਡ ਕਾਲਿੰਗ ਤੁਹਾਨੂੰ ਇੱਕ ਮੰਜ਼ਿਲ ਨੰਬਰ ਅਤੇ ਏਜੰਟ ਕੌਂਫਿਗਰੇਸ਼ਨ ThunderPhone ਨੂੰ ਦੇਣ ਦਿੰਦੀ ਹੈ, ਤਾਂ ਜੋ AI ਤੁਹਾਡੀ ਤਰਫ਼ੋਂ ਕਾਲ ਕਰੇ। ਆਮ ਵਰਤੋਂ ਦੇ ਮਾਮਲੇ:

  • ਅਪਾਇੰਟਮੈਂਟ ਪੁਸ਼ਟੀਕਰਨ
  • ਸਰਵੇਖਣ ਕਾਲਬੈਕ
  • ਮਿਸਡ ਕਾਲ ਤੋਂ ਬਾਅਦ "ਦੂਜੀ ਕੋਸ਼ਿਸ਼" ਵਾਲੇ ਫਾਲੋ-ਅੱਪ
  • ਡਿਸਪੈਚ-ਸ਼ੈਲੀ ਸੂਚਨਾਵਾਂ

ਪੂਰਵ-ਲੋੜਾਂ

  1. ਇੱਕ VoIP ਨੰਬਰ ਲਿਆਓ

    ਆਊਟਬਾਊਂਡ ਕਾਲਿੰਗ ਲਈ ਤੁਹਾਡੇ ਕੋਲ from_number ਦਾ ਮਾਲਕ ਹੋਣਾ ਲਾਜ਼ਮੀ ਹੈ, ਜੋ ਇੱਕ VoIP ਕਨੈਕਸ਼ਨ ਰਾਹੀਂ ਹੋਵੇ। ThunderPhone ਨੰਬਰ ਸਿਰਫ਼ ਇਨਬਾਊਂਡ ਲਈ ਹਨ। ਵੇਖੋ ਆਪਣੇ ਨੰਬਰ ਲਿਆਓ

  2. ਇੱਕ ਏਜੰਟ ਬਣਾਓ

    ਆਊਟਬਾਊਂਡ-ਕੇਂਦਰਿਤ prompt ਆਮ ਤੌਰ 'ਤੇ ਏਜੰਟ ਵੱਲੋਂ ਆਪਣੀ ਪਛਾਣ ਅਤੇ ਮਕਸਦ ਦੱਸਣ ਨਾਲ ਸ਼ੁਰੂ ਹੁੰਦਾ ਹੈ — "Hi, this is Acme calling to confirm your appointment for tomorrow at 3pm…"। 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 webhook ਦੇ ਜਵਾਬ ਸਕੀਮਾ ਨਾਲ ਮੇਲ ਖਾਂਦਾ ਹੈ:

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 webhook ਨੂੰ ਸਬਸਕ੍ਰਾਈਬ ਕਰੋ — ਕਾਲ ਖਤਮ ਹੋਣ ਬਾਰੇ ਜਾਣਨ ਦਾ ਇਹ ਸਭ ਤੋਂ ਤੇਜ਼ ਤਰੀਕਾ ਹੈ। ਜੇ ਤੁਸੀਂ ਇਨਬਾਊਂਡ webhooks ਸਵੀਕਾਰ ਨਹੀਂ ਕਰ ਸਕਦੇ, ਤਾਂ ਹਰ ਕੁਝ ਸਕਿੰਟਾਂ ਬਾਅਦ 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 organizationਪੁਸ਼ਟੀ ਕਰੋ ਕਿ from_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 ਮਿੰਟ) ਹੈ।


ਅਗਲੇ ਕਦਮ