Open in
โทรออก (API)
ทริกเกอร์การโทรออกที่ขับเคลื่อนด้วย AI จากโค้ดของคุณเอง สำหรับโฟลว์แบบสำรวจ ติดตามผล หรือยืนยัน
การโทรออกช่วยให้คุณส่งหมายเลขปลายทางและการกำหนดค่าเอเจนต์ให้ ThunderPhone แล้วให้ AI โทรแทนคุณ กรณีการใช้งานทั่วไป:
- การยืนยันนัดหมาย
- การโทรกลับเพื่อทำแบบสำรวจ
- การติดตามผล "ครั้งที่สอง" หลังจากรับสายไม่ทัน
- การแจ้งเตือนรูปแบบการจัดส่ง
ข้อกำหนดเบื้องต้น
- เตรียมหมายเลข VoIP
การโทรออกกำหนดให้คุณต้องเป็นเจ้าของ
from_numberผ่าน การเชื่อมต่อ VoIP หมายเลข ThunderPhone ใช้สำหรับสายเข้าเท่านั้น ดู นำหมายเลขของคุณมาใช้เอง - สร้างเอเจนต์
พรอมป์ต์สำหรับการโทรออกมักเริ่มต้นด้วยการที่เอเจนต์ระบุตัวตนและวัตถุประสงค์ — "สวัสดี นี่คือ Acme โทรมาเพื่อยืนยันนัดหมายของคุณสำหรับพรุ่งนี้เวลา 15:00 น.…" ตั้งค่า
outbound_speak_orderเป็นagent_first(ค่าเริ่มต้น) - รักษายอดคงเหลือให้เป็นบวก
การโทรออกจะส่งกลับ
402 Payment Requiredหากยอดคงเหลือ ≤$0.00เติมเงินผ่าน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" }โทรด้วยการกำหนดค่าแบบอินไลน์
หากคุณต้องการพรอมป์ต์ใช้ครั้งเดียวที่ไม่คุ้มค่าจะบันทึกเป็นเอเจนต์
ให้ส่ง 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 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 นาที)