Twilio เป็นผู้ให้บริการโทรคมนาคมระหว่างประเทศ ช่วยให้บอทสามารถโทรหาลูกค้าและเชื่อมต่อกับพนักงานของคุณได้ในกว่า 100 ประเทศที่ Twilio มีหมายเลขโทรศัพท์ให้บริการ รวมถึงเม็กซิโก บราซิล ตุรกี สเปน เยอรมนี ฝรั่งเศส สหรัฐอาหรับเอมิเรตส์ ไทย มาเลเซีย และอีกหลายประเทศ
สิ่งที่คุณจะได้รับหลังจากเชื่อมต่อ Twilio:
- โทรหาลูกค้าด้วยคลิกเดียวโดยตรงจากการ์ดสนทนา
- การโทรอัตโนมัติตามสถานการณ์ — บอทโทรหาลูกค้าและอ่านข้อความออกเสียง
- การโทรแบบกลุ่ม — บอทโทรหาลูกค้าและเชื่อมต่อกับพนักงานคนแรกที่ว่าง
- การบันทึกการโทรทั้งหมด โดยลิงก์การบันทึกจะถูกเก็บไว้ในตัวแปรของออเดอร์
- เหตุการณ์การโทร (สายเรียกเข้า, สายรับสาย, สายสิ้นสุด) โดยตรงในการสนทนา — คุณสามารถใช้เพื่อสร้างสถานการณ์ได้
ขั้นตอนที่ 1. สร้างบัญชีและซื้อหมายเลข
- ลงทะเบียนที่ twilio.com และทำตามขั้นตอนการยืนยันให้เสร็จสิ้น
- ใน Twilio Console เปิด Phone Numbers → Buy a number และเลือกหมายเลขในประเทศที่คุณต้องการ ตรวจสอบให้แน่ใจว่าเปิดใช้งาน Voice แล้ว — หมายเลขบางหมายเลขรองรับเฉพาะ SMS และไม่สามารถใช้โทรออกได้
ขั้นตอนที่ 2. คัดลอกข้อมูลประจำตัวการเข้าถึงของคุณ
บนหน้าหลักของ Twilio Console ภายใต้ Account Info คุณจะพบค่าสองค่า:
| รายการ | ลักษณะที่ปรากฏ |
|---|---|
| Account SID | ACxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx |
| Auth Token | ซ่อนอยู่; คลิก Show เพื่อแสดง |

⚠️ คัดลอก Auth Token ตามที่ปรากฏทุกตัวอักษร โดยไม่มีช่องว่างเพิ่มเติมก่อนหรือหลัง เราใช้มันเพื่อตรวจสอบความถูกต้องของทุกคำขอจาก Twilio อักขระพิเศษที่มองไม่เห็นเพียงตัวเดียวอาจทำให้การโทรทำงานได้ แต่เหตุการณ์การโทรไม่ปรากฏในการสนทนา
Auth Token ให้สิทธิ์เข้าถึงบัญชี Twilio และเงินในบัญชีของคุณอย่างเต็มรูปแบบ อย่าส่งผ่านแอปแชทหรือเผยแพร่ที่ใดก็ได้
ขั้นตอนที่ 3. เชื่อมต่อ Twilio ในบัญชีของคุณ
เปิด Project → Integrations → Telephony → Twilio และกรอกสามฟิลด์:
| ฟิลด์ | สิ่งที่ต้องกรอก |
|---|---|
| Account SID | จากขั้นตอนที่ 2 |
| Auth Token | จากขั้นตอนที่ 2 |
| Twilio Number | หมายเลขที่คุณซื้อ ในรูปแบบสากล: +14155550100
|

ต้องกรอกหมายเลขในรูปแบบ E.164: +, รหัสประเทศ และหมายเลขโทรศัพท์ โดยไม่มีช่องว่าง วงเล็บ หรือยัติภังค์
หลังจากบันทึก callback URL จะปรากฏบนหน้า คัดลอกไว้ จากนั้นเปิดการตั้งค่าสำหรับหมายเลขที่คุณซื้อใน Twilio Console และภายใต้ Voice & Fax กำหนดค่า:
- A call comes in → Webhook → วาง URL ที่คัดลอกมา และเลือก HTTP POST
หากไม่กำหนดค่านี้ การโทรออกจะทำงาน แต่การโทรเข้าและเหตุการณ์การโทรในการสนทนาจะไม่ทำงาน
หากต้องการยกเลิกการเชื่อมต่อ ให้ล้างฟิลด์ Account SID และบันทึกการตั้งค่า
ขั้นตอนที่ 4. เพิ่มหมายเลขโทรศัพท์ของพนักงาน
Twilio โทรหาพนักงานผ่านหมายเลขโทรศัพท์ปกติ — ไม่มีสายภายในที่นี่
เปิดแท็บ Team เลือกพนักงาน และกรอกฟิลด์ Twilio Phone Number ด้วยหมายเลขโทรศัพท์เต็มในรูปแบบเดียวกัน:
+905551112233
หากไม่มีหมายเลขนี้ ปุ่มโทรในการ์ดลูกค้าจะไม่ทำงานสำหรับพนักงานคนนั้น

การโทรจากการ์ดลูกค้า
ปุ่มโทรจะปรากฏถัดจากหมายเลขโทรศัพท์ของลูกค้าในการ์ดสนทนา การคลิกจะเริ่มลำดับต่อไปนี้:
- Twilio โทรหาพนักงาน — พนักงานเห็นหมายเลข Twilio ของคุณเป็นหมายเลขผู้โทร
- พนักงานรับสาย
- จากนั้น Twilio จึงโทรหาลูกค้าและเชื่อมต่อทั้งสองฝ่าย
ลำดับนี้ตั้งใจให้ลูกค้าไม่ต้องฟังเสียงเรียกเข้าในขณะที่พนักงานเดินไปที่โทรศัพท์ หากพนักงานไม่รับสาย ลูกค้าจะไม่ถูกโทรเลย
การโทรจากสถานการณ์บอท
มีสี่เมธอดในเครื่องคิดเลข
twilio_employee_call(client_phone, employee_phone, caller_id)
เชื่อมต่อพนักงานกับลูกค้า ทำงานเหมือนกับปุ่มโทรในการ์ดลูกค้า: โทรหาพนักงานก่อน จากนั้นจึงโทรหาลูกค้า
twilio_employee_call(client_phone, "+905551112233")

อาร์กิวเมนต์ที่สามเป็นตัวเลือก ระบุหมายเลขโทรศัพท์ที่ลูกค้าจะเห็นเป็นหมายเลขผู้โทร โดยค่าเริ่มต้นจะใช้หมายเลข Twilio ของคุณ
twilio_group_call(client_phone, employee_phones, caller_id)
โทรหาลูกค้า และเมื่อลูกค้ารับสาย จะโทรหาพนักงานทุกคนในรายการที่ระบุพร้อมกัน การโทรจะเชื่อมต่อกับพนักงานคนแรกที่รับสาย
twilio_group_call(client.phone, "+905551112233,+905554445566,+905557778899")
⚠️ ลำดับกลับกันที่นี่ ไม่เหมือนกับเมธอดก่อนหน้า ลูกค้ารับสายก่อนและอาจได้ยินความเงียบสองสามวินาทีในขณะที่ Twilio โทรหาพนักงาน นี่คือข้อจำกัดของ Twilio: การโทรกลุ่มพร้อมกันและเชื่อมต่อคนแรกที่รับสายทำได้เพียงวิธีนี้ หากสำคัญที่ลูกค้าไม่ต้องรอ ให้ใช้
twilio_employee_call
twilio_play_message(client_phone, text, voice, language)
โทรหาลูกค้าและอ่านข้อความที่ระบุโดยใช้เสียงสังเคราะห์ มีประโยชน์สำหรับการแจ้งเตือนนัดหมาย การยืนยันออเดอร์ และการแจ้งเตือนการจัดส่ง
twilio_play_message(client.phone, "Hello! This is a reminder about your appointment tomorrow at 3:00 PM.", "alice", "en-EN")
เสียง alice เป็นเสียงสากลและรองรับภาษาหลัก รวมถึง tr-TR, es-ES, es-MX, pt-BR, de-DE, fr-FR, en-US, ru-RU และ ar-XA
ระบุภาษาให้ชัดเจนเสมอ — มิฉะนั้น Twilio อาจอ่านข้อความด้วยการออกเสียงภาษาอังกฤษ
อย่ารวมรหัสผ่าน รหัสยืนยัน หรือข้อมูลที่ละเอียดอ่อนอื่นๆ ในข้อความ: การโทรอาจถูกตอบโดยวอยซ์เมล
twilio_get_record_link(call_id)
ส่งคืนลิงก์ไปยังการบันทึกการโทร ไม่ค่อยจำเป็นเพราะลิงก์มักจะปรากฏโดยอัตโนมัติ (ดูหัวข้อถัดไป) อาจมีประโยชน์หากไม่ได้รับลิงก์การบันทึกและจำเป็นต้องขออีกครั้ง
twilio_get_record_link()
หากไม่ระบุอาร์กิวเมนต์ จะใช้การโทรล่าสุดของลูกค้า
ตัวแปรและเหตุการณ์
หลังจากการโทรแต่ละครั้ง บอทจะเก็บตัวแปรต่อไปนี้ในออเดอร์ของลูกค้า:
| ตัวแปร | สิ่งที่เก็บ |
|---|---|
twilio_call_id |
ตัวระบุการโทรของ Twilio |
twilio_call_disposition |
ผลลัพธ์การโทร: completed, busy, no-answer, failed, canceled
|
twilio_call_duration |
ระยะเวลาการโทรเป็นวินาที |
twilio_record_link |
ลิงก์ไปยังการบันทึก |
twilio_record_id |
ตัวระบุการบันทึกของ Twilio |
เหตุการณ์ในรูปแบบ twilio_call_event <status> จะถูกส่งไปยังการสนทนา คุณสามารถใช้เป็นเงื่อนไขในสถานการณ์ของคุณ:
| เหตุการณ์ | เมื่อถูกส่ง |
|---|---|
twilio_call_event initiated |
การโทรถูกสร้างขึ้น |
twilio_call_event ringing |
โทรศัพท์กำลังดัง |
twilio_call_event answered |
การโทรถูกตอบรับ |
twilio_call_event completed |
การโทรสิ้นสุดลง |
twilio_call_event busy / no-answer / failed / canceled
|
การโทรไม่สำเร็จ |
twilio_call_event recording |
การบันทึกการโทรพร้อมแล้ว |
⚠️ รอเหตุการณ์
recordingก่อนใช้ลิงก์การบันทึก ไม่ใช่เหตุการณ์completedTwilio ประมวลผลไฟล์บันทึกหลังจากการโทรสิ้นสุดแล้ว ในเวลาที่ได้รับเหตุการณ์completedตัวแปรtwilio_record_linkยังว่างอยู่ สถานการณ์ที่ส่งการบันทึกไปยังผู้จัดการหรือ CRM จึงต้องถูกทริกเกอร์โดยเหตุการณ์recording
สถานการณ์ทั่วไป "ติดต่อลูกค้าไม่ได้ — ส่งข้อความหาเขา" ทำงานดังนี้: เงื่อนไขสำหรับ twilio_call_event no-answer หรือ busy → ส่งข้อความถึงลูกค้า

การบันทึกการโทร
การบันทึกเปิดใช้งานโดยค่าเริ่มต้นสำหรับการโทรทั้งหมดที่เกี่ยวข้องกับพนักงาน บทสนทนาทั้งสองฝ่ายจะถูกบันทึกตั้งแต่ช่วงเวลาที่รับสาย ไฟล์จะถูกเก็บในบัญชี Twilio ของคุณและมีค่าใช้จ่ายตามอัตราของ Twilio
⚠️ URL
twilio_record_linkชี้ไปที่ Twilio โดยตรงและได้รับการป้องกันด้วยข้อมูลประจำตัวบัญชีของคุณ คุณไม่สามารถเปิดในเบราว์เซอร์หรือส่งให้ลูกค้าได้ — จะแสดงข้อผิดพลาดการเข้าถึง หากต้องการดาวน์โหลดการบันทึก ให้เปิด Twilio Console และไปที่ Monitor → Logs → Calls จากนั้นค้นหาการโทรโดยใช้twilio_call_id
⚖️ การบันทึกการโทรถูกควบคุมโดยกฎหมาย ในหลายประเทศ — รวมถึงเยอรมนี ฝรั่งเศส สเปน และหลายรัฐในสหรัฐฯ — อาจต้องได้รับความยินยอมจากทั้งสองฝ่าย และในบางกรณีต้องเล่นคำแจ้งเตือนด้วยเสียงตอนเริ่มการโทร ในฐานะเจ้าของบัญชี Twilio คุณรับผิดชอบในการปฏิบัติตามข้อกำหนดที่เกี่ยวข้อง หากกฎเหล่านี้ใช้กับคุณ ให้เริ่มการโทรด้วยการแจ้งเตือนการบันทึกหรือปิดการบันทึกในการตั้งค่าหมายเลข Twilio ของคุณ
การแก้ไขปัญหา
การโทรไม่ถูกสร้างและได้รับข้อผิดพลาดการรับรองความถูกต้อง
Account SID หรือ Auth Token ไม่ถูกต้อง คัดลอกอีกครั้งจาก Twilio Console สาเหตุที่พบบ่อยที่สุดคือช่องว่างเพิ่มเติมหรือคัดลอก Test Token โดยไม่ได้ตั้งใจแทน Auth Token หลัก
การโทรทำงาน แต่ไม่มีเหตุการณ์หรือการบันทึกในการสนทนา
callback URL ยังไม่ได้กำหนดค่าในการตั้งค่าหมายเลข Twilio (ดู ขั้นตอนที่ 3) หรือกำหนดค่าด้วย HTTP method ที่ผิด ต้องเป็น HTTP POST
อีกสาเหตุที่พบบ่อยคือ Auth Token ถูกเปลี่ยนใน Twilio แต่ยังใช้โทเค็นเก่าในบัญชีของคุณ ในกรณีนี้ ลายเซ็นคำขอไม่ตรงกัน ดังนั้น callback ทั้งหมดจะถูกปฏิเสธ
ข้อผิดพลาด 21606 หรือ "From number not valid"
หมายเลขที่กรอกในฟิลด์ Twilio Number ไม่ได้ซื้อภายใต้บัญชี Twilio ของคุณหรือไม่รองรับการโทรด้วยเสียง
เปิด Phone Numbers → Manage → Active numbers และตรวจสอบว่าหมายเลขอยู่ในรายการและมีความสามารถ Voice
ข้อผิดพลาด 21215 — Geo Permissions
โดยค่าเริ่มต้น Twilio บล็อกการโทรไปยังหลายประเทศเพื่อป้องกันการฉ้อโกง
เปิด Voice → Settings → Geo Permissions และเปิดใช้งานปลายทางที่คุณต้องการ
ลูกค้าโทรเข้า แต่การ์ดสนทนาถูกสร้างสำหรับหมายเลขของพนักงาน
callback ถูกกำหนดค่าด้วย URL ที่ผิด คัดลอก callback URL จากหน้าอินทิเกรชันอีกครั้ง ตรวจสอบให้แน่ใจว่าคัดลอก URL ทั้งหมด รวมถึงทุกอย่างหลังเครื่องหมายคำถาม
บัญชีทดลอง: Twilio เล่นข้อความเสียงก่อนการโทร
นี่คือพฤติกรรมมาตรฐานสำหรับบัญชีทดลองของ Twilio บัญชีทดลองยังโทรได้เฉพาะหมายเลขโทรศัพท์ที่ยืนยันแล้วเท่านั้น
เติมเงินในบัญชีและอัปเกรดเป็นบัญชี Twilio เต็มรูปแบบ