Post-Call Analytics — สรุปสายอัตโนมัติ
กำหนดให้ Agent ดึงข้อมูลสำคัญจากบทสนทนาออกมาเป็นช่องข้อมูล เช่น ลูกค้ายินยอมหรือไม่ ยอดที่ตกลงจะชำระ และวันที่นัดหมาย โดยดูได้ทันทีหลังวางสาย
Post-Call Analytics คืออะไร
Post-Call Analytics (ระบบวิเคราะห์หลังจบสาย) คือ ระบบสรุปสายอัตโนมัติ ที่ Agent ทำงานหลังจบสายทุกครั้ง โดยดึงข้อมูลสำคัญจากบทสนทนาออกมาเป็น Field ที่มีโครงสร้าง (ข้อมูลที่จัดเป็นระเบียบ — Structured Data) ไม่ใช่เพียง Transcript (บันทึกบทสนทนา) แบบดิบเท่านั้น
เปรียบเทียบให้เห็นภาพ: หาก Transcript เปรียบเสมือนบันทึกการประชุมที่จดไว้ทุกคำ Post-Call Analytics ก็เปรียบเสมือน ใบสรุปผลการประชุม ที่มีหัวข้อ เช่น "ผู้เข้าร่วม" "ข้อตกลง" และ "วันนัดครั้งต่อไป" ซึ่งนำไปกรอกใน CRM หรือจัดทำรายงานได้ทันที โดยไม่ต้องอ่านบันทึกฉบับเต็มทุกครั้ง
ทำไมต้องตั้งค่า Post-Call Analytics
เพราะการอ่าน Transcript ทุกสายไม่สามารถรองรับปริมาณที่มากขึ้นได้ โดยเฉพาะเมื่อ Campaign (แคมเปญโทรออก) โทรเป็นหลักร้อยถึงหลักพันสายต่อวัน
- ทีมขาย ต้องการทราบว่าลูกค้ารายใดยินยอมให้ติดต่อกลับ จึงใช้ Field
customer_consent - ทีมการเงิน ต้องการทราบยอดที่ลูกค้าตกลงจะชำระ จึงใช้ Field
agreed_amount - ทีมนัดหมาย ต้องการทราบวันและเวลาที่ลูกค้าสะดวก จึงใช้ Field
preferred_date - ฝ่ายคุณภาพ ต้องการทราบว่าสายใดต้องตรวจสอบซ้ำ จึงใช้ Field
requires_review
Field เหล่านี้สามารถ ส่งออกเป็นไฟล์ CSV ได้จาก Call Log แล้วนำเข้าสู่ CRM, Google Sheet หรือแดชบอร์ดของบริษัทได้ทันที
ประเภทของ Field ที่เก็บได้
Post-Call Analytics รองรับ Field 4 ประเภทหลัก โปรดเลือกให้เหมาะกับข้อมูลที่ต้องการเก็บ
| ประเภท | ใช้กับอะไร | ตัวอย่าง Output |
|---|---|---|
| Text | ข้อความอิสระ เช่น ชื่อ เหตุผล หรือข้อความสรุป | "ลูกค้าขอเลื่อนนัดเป็นสัปดาห์หน้า" |
| Number | ตัวเลข เช่น ยอดเงิน จำนวน หรือคะแนน | 3500 |
| Boolean (ใช่/ไม่ใช่) | คำถามที่ตอบใช่หรือไม่ใช่ เช่น ยินยอม ยืนยัน หรือสนใจ | true / false |
| Enum (ตัวเลือกหลายรายการ) | เลือกจากตัวเลือกที่กำหนดไว้ เช่น สถานะ หรือหมวดหมู่ | "interested" | "not_interested" | "callback" |
วิธีตั้งค่า Post-Call Analytics
เปิดแท็บ Post-Call Analytics
ในหน้า Flow Editor ให้ไปที่ Panel (แผงควบคุม) ด้านขวา แล้วคลิกแท็บ Post-Call Analytics (แท็บขวาสุด)
ภาพประกอบนี้คือผลลัพธ์ที่คุณจะเห็นในหน้า Call Detail หลัง Agent โทรจบ โดยแต่ละช่องที่เห็นมาจาก Field ที่ตั้งไว้ใน Panel ด้านขวาของหน้า Editor
กดปุ่ม + Add Field
จะมีกล่องข้อความ (Dialog) ปรากฏขึ้นให้กรอกข้อมูล Field ใหม่ ดังนี้
- Field Name — ชื่อตัวแปร (เช่น
customer_consent) ให้ใช้รูปแบบ snake_case โดยไม่มีช่องว่าง - Display Label — ชื่อที่อ่านเข้าใจง่าย (เช่น "ลูกค้ายินยอม") ซึ่งจะแสดงในหน้า Call Detail
- Type — เลือกประเภท Text / Number / Boolean / Enum
- Description — คำอธิบายให้ Agent ทราบว่า Field นี้คืออะไร และเก็บค่าจากส่วนใดของบทสนทนา
เขียน Description ให้ละเอียด
Description คือ คำสั่งสำหรับ Agent ที่ระบุว่าให้สรุปข้อมูลใดลงใน Field นี้
ตัวอย่างที่ดี:
customer_consent(Boolean): "ลูกค้ายินยอมให้ติดต่อกลับภายใน 7 วันหรือไม่ หากตอบ 'ครับ/ค่ะ/ยินดี/ตกลง' ให้เป็น true หากตอบ 'ไม่/ไม่สะดวก' ให้เป็น false"agreed_amount(Number): "ยอดเงินที่ลูกค้าตกลงจะชำระในสายนี้ ระบุเป็นบาทเท่านั้น หากไม่ตกลงให้เป็น 0"call_outcome(Enum: paid/promised/refused/no_answer): "สถานะสุดท้ายของสาย ได้แก่ ลูกค้าชำระแล้ว / สัญญาจะชำระ / ปฏิเสธ / ไม่รับสาย"
กำหนด Field Options (สำหรับ Enum)
หากเลือก Type เป็น Enum ให้ใส่ตัวเลือกในรูปแบบ key : ความหมาย ทีละบรรทัด
paid : ลูกค้าชำระแล้วในสายนี้ promised : ลูกค้าสัญญาจะชำระภายในกำหนด refused : ลูกค้าปฏิเสธชำระ need_info : ลูกค้าต้องการข้อมูลเพิ่มก่อนตัดสินใจ
Agent จะเลือกได้เพียง 1 ใน 4 ตัวเลือก เท่านั้น ซึ่งช่วยลดความคลาดเคลื่อนของข้อมูลในไฟล์ CSV
กด Save Field แล้วเพิ่ม Field ใหม่ได้ต่อเนื่อง
คุณเพิ่ม Field ได้ไม่จำกัด แต่แนะนำให้เริ่มที่ 5-8 Field ที่ทีมใช้งานจริง เพราะหากมากเกินไปจะทำให้ Agent สับสน
Publish เพื่อให้ Field เริ่มทำงาน
Field ใหม่ ยังไม่มีผล จนกว่าจะ Publish ดูรายละเอียดเพิ่มเติมได้ในหัวข้อ Publish
ตัวอย่างการใช้งานจริง
กรณีที่ 1: Agent ติดตามหนี้
ทีมการเงินต้องการทราบผลของแต่ละสายเพื่ออัปเดตระบบ CRM โดยอัตโนมัติ จึงตั้ง 6 Field ดังนี้
| Field Name | Type | Description |
|---|---|---|
customer_reached | Boolean | ติดต่อลูกค้าตัวจริงได้หรือไม่ |
call_outcome | Enum | paid / promised / refused / unreachable |
agreed_amount | Number | ยอดที่ลูกค้าตกลงจะชำระ (หน่วยเป็นบาท) |
promised_date | Text | วันที่ลูกค้าสัญญาว่าจะชำระ (รูปแบบ YYYY-MM-DD) |
reason | Text | เหตุผลที่ลูกค้ายังไม่ชำระ (โดยสรุป 1-2 บรรทัด) |
requires_human | Boolean | สายนี้ต้องให้เจ้าหน้าที่ติดตามต่อหรือไม่ |
กรณีที่ 2: Agent นัดหมายคลินิก
| Field Name | Type | Description |
|---|---|---|
confirmed | Boolean | ลูกค้ายืนยันว่าจะมาตามนัดหรือไม่ |
action | Enum | confirm / reschedule / cancel |
new_date | Text | วันที่นัดใหม่ (กรณีขอเลื่อน) |
preparation_questions | Text | คำถามของลูกค้าเกี่ยวกับการเตรียมตัวก่อนนัด |
ข้อผิดพลาดที่เจอบ่อย
❌ ใช้ Type เป็น Text กับทุก Field
อาการ: เมื่อทุก Field เป็น Text ข้อมูลใน CSV จะมีทั้ง "ครับ" "ใช่ครับ" "Yes" และ "ยินยอม" ปะปนกัน ทำให้กรองข้อมูลได้ยาก
วิธีแก้: หากคำตอบเป็นใช่หรือไม่ใช่ ให้ใช้ Boolean และหากมีตัวเลือกจำกัด ให้ใช้ Enum
❌ Description สั้นหรือกำกวมเกินไป
อาการ: หาก Description เป็น "เก็บยอด" Agent จะไม่ทราบรูปแบบ ทำให้ค่าใน CSV เป็น "สามพันห้า" บ้าง 3500 บ้าง
วิธีแก้: ระบุรูปแบบและเงื่อนไขให้ชัดเจน เช่น "ยอดเป็นตัวเลขหน่วยบาทเท่านั้น ห้ามใส่เครื่องหมายจุลภาคหรือสกุลเงิน"
❌ ตั้ง Field มากเกินไป (15-20 Field)
อาการ: เมื่อทีมต้องการเก็บทุกอย่าง Agent จะใช้เวลาประมวลผลนานขึ้น ทำให้เกิดความล่าช้า (Latency) หลังจบสายมากขึ้น
วิธีแก้: จำกัดไว้ที่ 5-8 Field ที่ใช้งานจริง แล้วค่อยเพิ่มภายหลังหากจำเป็น
❌ ไม่ตรวจสอบค่าที่ Agent เก็บ
อาการ: ปล่อยให้ Agent เก็บค่าไปเรื่อย ๆ โดยไม่มีผู้ตรวจสอบ
วิธีแก้: ในช่วงแรก ควรสุ่มตรวจสอบ 10-20% ของสายในหน้า Call Detail หาก Field ใดผิดพลาดบ่อย ให้ปรับ Description ให้ชัดเจนขึ้น