วันนี้ผมนั่งทำงานอยู่ดี ๆ ก็ได้ยินเสียงโทรศัพท์มือถือผมดังขึ้นมา ผมก็ตกใจรีบรับสาย ตอนที่จะรับก็เห็นแว่บนึงว่าเบอร์ที่โทรมาเป็นเบอร์ *1003 แต่มือมันไวกดรับไปแล้ว แถมยังแนบฟังที่หูเรียบร้อยแล้ว ก็เลยต้องฟังไป

มันเป็นระบบอัตโนมัติที่โทรมาจากผู้ให้บริการโทรศัพท์มือถือครับ เสียงเจื้อยแจ้วทีเดียว ก็พูดเป็นฉาก ๆ เลยว่ามีโปรโมชันใหม่มาแนะนำ พร้อมทั้งชี้แนะว่าต้องกดโน่นกดนี่ เพื่อให้ได้มาซึ่งโปรโมชันใหม่ (และผมก็ต้องเสียตังค์ด้วย)

ทีนี้หลาย ๆ คนอาจจะสงสัยว่าเจ้ากลไกดังกล่าวเรียกว่าอะไร มันเรียกว่า Interactive Voice Response หรือ IVR ครับ

ระบบ IVR คือระบบที่ต่อเชื่อมระหว่างมนุษย์กับคอมพิวเตอร์ครับ โดยอาศัยระบบโทรศัพท์เป็นสื่อกลางในการสื่อสารกัน ซึ่งระบบจะโต้ตอบกับเราด้วยเสียง ในขณะที่เราโต้ตอบกับระบบโดยการกดปุ่มตัวเลขที่หน้าปัดโทรศัพท์ เพื่อสั่งงานให้มันทำตามที่เราต้องการ โดยระบบ IVR จะมีตัวเลือกที่จำกัดให้กับเรา ในการสั่งการมัน

สมัยก่อนราว 12 ปีได้ ผมเองก็มีความใฝ่ฝันเหมือนกันว่า ผมอยากจะโทรศัพท์กลับไปที่บ้าน แล้วก็สั่งงานอุปกรณ์อิเลกทรอนิกส์ต่าง ๆ ในบ้านให้มันทำงาน ให้มันปิด ให้มันเปิด รวมถึงให้มันรายงานทุกสิ่งทุกอย่างในบ้าน ว่าตอนนี้มีสถานะยังไง และมีเหตุการณ์อะไรผิดปรกติเกิดขึ้นในบ้านบ้าง

โดยคิดเอาไว้ว่าการจะผ่านเข้าไปในระบบได้ ผมต้องใส่หมายเลขรหัสผ่านซัก 15 หลักก่อน จึงจะสามารถผ่านเข้าสู่ระบบการทำงานได้

ตอนนั้นผมถามเพื่อนรุ่นเดียวกันว่ามีโอกาสทำได้มั้ยและทำยังไง แต่ไม่มีใครตอบผมได้ และตัวผมเองก็ยังไม่เข้าใจเลยว่ามันจะทำได้ยังไง เพราะตอนนั้นก็รู้จักเพียงแค่ FAX Modem ความเร็ว 14.4 kbps ที่เป็นอุปกรณ์ต่อระหว่างสายโทรศัพท์กับคอมพิวเตอร์เท่านั้น หลังจากนั้นความคิดดังกล่าวก็เลือนลางไป

จากนั้นอีกราว 6 ปีผมจึงได้เข้าทำงานในบริษัทเอกชนแห่งหนึ่ง ที่นั่น ผมได้ถูกมอบหมายให้ดูแลระบบที่เรียกว่า IVR จึงทำให้ผมได้รู้ซะทีว่า สิ่งที่ผมฝันเอาไว้ มันทำให้เป็นจริงได้ แต่มีราคาและต้นทุนที่แพงมาก

จากการทำงานในครั้งนั้น ทำให้ผมรู้องค์ประกอบของ IVR อย่างมากว่าการจะสร้างระบบ IVR ให้เกิดขึ้นมาได้ เราจะต้องลงทุนจัดซื้อจัดจ้างสิ่งดังต่อไปนี้

  1. การ์ด IVR ซึ่งเป็นกุญแจสำคัญในการแปลงสัญญาณจากชุมสายโทรศัพท์ ให้กลายเป็นสัญญาณที่คอมพิวเตอร์เข้าใจได้ โดยปัจจุบันการ์ด IVR ถูกผูกขาดโดย Dialogic ซึ่งเป็นแบรนด์หนึ่งของ Intel
  2. Driver ของการ์ด IVR, ซอฟต์แวร์สำหรับกำหนดค่าต่าง ๆ สำหรับการ์ด IVR และ Software Developement Kit ซึ่งสองอย่างแรกแถมมาให้กับตัวการ์ดอยู่แล้ว แต่สำหรับ SDK ต้องออกเงินซื้อเอง
  3. ซอฟต์แวร์สำหรับออกแบบผังการทำงาน, ออกแบบบทพูดใน IVR และควบคุมการ์ด IVR ซึ่งซอฟต์แวร์ตัวนี้เราจะสร้างเองก็ได้ โดยใช้โปรแกรมจำพวก Borland C Builder หรือ Visual Studio .NET โดยเวลาเขียน ก็ให้เขียนติดต่อกับ SDK ของการ์ด IVR ในข้อ 2 แต่โดยปรกติส่วนใหญ่ บริษัทเอกชนจะไม่ทำเอง แต่จะซื้อมาจากบริษัทที่เป็นผู้เชี่ยวชาญเรื่องระบบ IVR อยู่แล้ว เพราะการเขียนคุมการ์ด IVR เป็นเรื่องที่ยากมากกกกก ในเมืองไทยเรา บริษัทที่เชี่ยวชาญเรื่อง IVR ก็เห็นจะมีแต่บริษัท CT-Asia

จากประสบการณ์ของผม ทั้งที่เคยติดตั้งระบบ IVR แบบอนาล็อก และแบบดิจิตอล บอกได้เลยว่าการติดตั้งต้องใช้เงินลงทุนค่อนข้างสูงพอสมควร โดยแบ่งค่าใช้จ่ายใหญ่ ๆ ออกเป็น

  1. ค่าการ์ด IVR ซึ่งถ้ามีขนาดเล็กเป็นอนาล็อกรับสายได้ 4 เบอร์ก็ราคาหลักหมื่น แต่ถ้าเป็นขนาดใหญ่รับสายได้ 30 เบอร์ แถมเป็นดิจิตอล ก็ราคาหลักแสน
  2. ค่า SDK มีราคาหลักหมื่น เพราะจะได้คู่มือในการพัฒนามาด้วย โดยคู่มือจะอธิบายว่าฟังค์ชันในการทำงานแต่ล่ะฟังค์ชันจะเขียนควบคุมยังไงบ้าง (ถ้าเราซื้อซอฟต์แวร์สำเร็จรูปมา อันนี้ไม่ต้องจ่าย)
  3. ซอฟต์แวร์สำหรับออกแบบผังการทำงาน, ออกแบบบทพูดใน IVR และควบคุมการ์ด ตัวนี้ราคาเป็นล้าน (แต่ถ้าเราเขียนเอง ก็ไม่ต้องจ่าย แต่ส่วนใหญ่เขียนไม่ได้หรอก)
  4. ตู้ PBX เพื่อทำหน้าที่รับสัญญาณโทรศัพท์จาก บริษัท ทศท จำกัด (มหาชน) หรือบริษัท ทรู คอร์ปอเรชัน จำกัด (มหาชน) แล้วมากระจายสัญญาณในองค์การ ซึ่งตู้ที่ว่ามีตั้งแต่ขนาดเล็กหลักหมื่น ไปจนถึงขนาดใหญ่หลักสิบล้าน ตู้แบบที่รับส่งได้แต่สัญญาณอนาล็อก ไปจนถึงตู้แบบที่รับส่งได้ทั้งสัญญาณอนาล็อกและดิจิตอล

อย่างต่ำ ๆ การติดตั้งระบบ IVR ต้องใช้เงินหลักล้านครับ ถึงจะทำได้ เพราะสิ่งที่แพงที่สุดก็เห็นจะเป็นซอฟต์แวร์ที่ใช้สำหรับออกแบบผังการทำงาน, ออกแบบบทพูดใน IVR และควบคุมการ์ด เนี่ยแหล่ะ

สำหรับตู้ PBX เราอาจจะไม่จำเป็นต้องมีก็ได้ กรณีที่เราไม่ต้องการ routing สัญญาณโทรศัพท์ไปหลาย ๆ เครื่อง แต่องค์กรใหญ่ ๆ ส่วนใหญ่ก็ต้องการมีเบอร์ภายใน และความสามารถในการโอนสายทั้งนั้นแหล่ะ

ทีนี้สมมุติว่าเรามีตังค์ซื้อมาทั้งชุด หรือเราซื้อมาแค่การ์ด IVR กับ SDK แล้วเราพัฒนาซอฟต์แวร์เองจนสำเร็จ เราจะติดตั้งมันยังไงเพื่อให้มันทำงานได้? วิธีมันทำงี้ครับ

กรณีเราติดตั้งระบบ IVR ที่บ้าน สิ่งที่เราต้องทำก็คือ

  1. เสียบการ์ด IVR ลงในคอมพิวเตอร์ของเราครับ เสียบลงไปในช่อง PCI เพราะเดี๋ยวนี้การ์ดแบบ ISA ไม่มีแล้ว
  2. ติดตั้ง Driver ของการ์ด จากนั้น Configure ตามคู่มือ
  3. ติดตั้งซอฟต์แวร์สำหรับออกแบบผังการทำงาน, ออกแบบบทพูด และควบคุมการ์ด
  4. ออกแบบผังการทำงานในซอฟต์แวร์ดังกล่าวว่า เมื่อมีคนโทรเข้ามาจะให้พูดอะไรบ้าง และเมื่อพูดเสร็จแล้วอนุญาติให้คนที่โทรเข้ามากดปุ่มอะไรบ้าง ถ้ากดผิดก็ให้บอกว่ากดผิด แล้ววนไปกดใหม่ ลักษณะแบบนี้เหมือน flowchart ง่าย ๆ ที่พวกเราเรียนกันมา
  5. อัดเสียงพูดด้วยไมโครโฟนแล้วบันทึกเป็นไฟล์นามสกุล WAV โดยใช้ซอฟต์แวร์สำเร็จรูปทั่ว ๆ ไปที่สามารถอัดเสียงได้
  6. การ์ด IVR ส่วนใหญ่จะกำหนดไว้ในคู่มือครับว่า สามารถรองรับรูปแบบเสียงแบบใดบ้าง เช่น PCM-16 bit, PCM-8 bit, ADPCM-16 bit หรือ ADPCM-8 bit ซึ่งตรงนี้ก็แล้วแต่การ์ดครับ เราก็ทำตามคู่มือโดยการใช้ซอฟต์แวร์ตัดแต่งเสียง แปลงไฟล์นามสกุล WAV ของเรา ให้เป็นไปตามรูปแบบที่การ์ดกำหนดไว้
  7. นำไฟล์เสียงไปใส่ไว้ใน Folder ที่ซอฟต์แวร์ควบคุม IVR กำหนดไว้
  8. จากนั้นนำเอาสายโทรศัพท์ของที่บ้านซึ่งสัญญาณมาจาก บริษัท ทศท จำกัด (มหาชน) หรือ บริษัท ทรู เสียบเข้าการ์ด IVR
  9. สุดท้ายก็สั่ง run โปรแกรม แล้วลองโทรเข้าบ้านดู

กรณีเราติดตั้งระบบ IVR ในองค์กรจะต่างกันนิดหน่อยตรงที่ เราจะเอาสายโทรศัพท์ซึ่งปล่อยสัญญาณจากตู้ PBX มาเสียบเข้าการ์ด IVR แทน

สิ่งที่ผมอธิบาย มันเป็นแค่การอธิบายคร่าว ๆ เพราะเรื่องจริง การที่เราจะเชี่ยวชาญในการติดตั้งและปรับแต่ง IVR ต้องใช้ประสบการณ์ล้วน ๆ การอธิบายเป็นเพียงแค่เล่าสู่กันฟังเท่านั้น จึงดูแล้วเหมือนไม่มีอะไรยากมากนัก

ในปัจจุบัน ระบบ IVR ก้าวหน้าขึ้นมากครับ เพราะนอกจากจะทำตาม flow ที่เรากำหนดได้แล้ว มันยังสามารถต่อเชื่อมกับฐานข้อมูลเพื่อสืบค้นข้อมูลของผู้ใช้ และยังสามารถติดต่อกับ TCP/IP Socket เพื่อรับส่ง Message กับ Customize Application อื่นได้อีกด้วย ทำให้การโต้ตอบกับผู้ใช้มีความยืดหยุ่นสูง ซึ่งขึ้นกับว่าคนเขียน script IVR จะมีความสามารถและความยืดหยุ่นในการสร้างสรรค์ระบบ IVR แค่ไหน

ดังนั้นการเขียน script IVR จึงถือได้ว่าเป็นทักษะระดับเดียวกับการเขียน Visual Studio .NET หรือเขียน Web Application ด้วย Java Server Page, Java Servlet หรือ PHP ครับ

เพียงแต่คนทำงานด้าน IVR เป็นคนส่วนน้อยของนักพัฒนาซอฟต์แวร์เท่านั้นเอง จึงไม่ค่อยได้เปิดเผยออกสู่แวดวงนักพัฒนาซอฟต์แวร์มากนัก

Related Posts

One thought on “Interactive Voice Response.

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องข้อมูลจำเป็นถูกทำเครื่องหมาย *