1. นายธนวัฒน์ กันพานิชย์ 473040581-3 ระบบตอบรับอัตโนมัติเพื่อแจ้งผลการเรียนของนักศึกษา Interactive Voice Respond System for Students' Grades Notification ผู้จัดทำโครงการ 1. นายธนวัฒน์ กันพานิชย์ 473040581-3 2. นายวิทวัฒน์ วะสุรี 473040613-6 อาจารย์ที่ปรึกษา ผศ.ดร.กานดา สายแก้ว
หัวข้อที่จะนำเสนอ ที่มาและเป้าหมายของโครงการ โครงสร้างของระบบ เครื่องมือที่ใช้ในการพัฒนา การออกแบบระบบตอบรับอัตโนมัติ การออกแบบฐานข้อมูลฝั่งระบบตอบรับอัตโนมัติ การออกแบบเว็บเซอร์วิสเพื่อดึงข้อมูลจากฐานข้อมูลของสำนักทะเบียน ความคืบหน้าของโครงการ ปัญหาที่พบและแนวทางแก้ไข แผนการดำเนินงานต่อไป
ที่มาและเป้าหมายของโครงการ ฐานข้อมูลผลการเรียนฝั่งสำนักทะเบียน ฐานข้อมูลผลการเรียนฝั่งระบบตอบรับอัตโนมัติ ที่มาและเป้าหมาย ปัจจุบันทางมหาวิทยาลัยมีช่องที่จะให้ นศ. เข้าไปดูเกรดได้เพียงช่องทางเดียวนั้นคือ ผ่านทางเว็บไซต์[1] เมื่อมีนักศึกษาเข้ามาดูเกรดพร้อมกัน[2]เป็นจำนวนมากๆ ผลที่ตามมาคือ [3] เว็บล่มเนื่องจากเซิร์ฟเวอร์ทำงานหนัก เพื่อแก้ปัญหาในส่วนนี้จึงได้มีโครงการนี้ขึ้นมา [4]เพื่อลดการทำงานของเซิร์ฟเวอร์ของสำนักทะเบียน โดยการเพิ่มเซิร์ฟเวอร์ที่เก็บข้อมูลเกี่ยวกับเกรดขึ้นมาอีก 1 ตัว และเพิ่มข่องทางในการดูเกรด คือ [5]ใช้โทรศัพท์เข้าไปฟังเกรด ด้วยความสะดวกของโทรศัพท์ที่สามารถใช้ได้ทุกที่และมีใช้ทุกคน [6] จึงทำให้ นศ. หันมาใช้ช่องทางนี้จึงเป็นผลให้[7]ลดการทำงานของฐานข้อมูลของสำนักทะเบียนลงได้ และเป็นการเพิ่ม application เกี่ยวกับ VoIP ที่มี่การนำเอา เทคโนโลยีเว็บเซอร์วิสและเทคโนโลยีสังเคราะห์เสียงพูดเข้ามาประยุกต์ใช้งานร่วมกัน
โครงสร้างของระบบ ฐานข้อมูลฝั่งสำนักทะเบียน USER TTS Web Services USER เริ่มต้นระบบจะทำการดึงข้อมูลที่เกี่ยวกับเกรดของ นศ [1]จากฐานข้อมูลของสำนักทะเบียน มาเก็บไว้ที่ฐานข้อมูลสำรองของระบบตอบรับอัตโนมัติก่อน เพื่อรอให้บริการ [2] เมื่อมีผู้ใช้โทรเข้ามาที่ระบบ จะมี IVP เป็นตัวจัดการในเรื่องการตรวจสอบผู้ใช้ และควบคุมเมนูของการทำงาน [3] จากนั้นจะส่งคำร้องขอข้อมูลตามที่ผู้ใช้ต้องการไปยังฐานข้อมูลของระบบตอบรับ [4] จากนั้นข้อมูลที่ได้จะถูกส่งไปยังที่แปลงเสี่ยง TTS เมื่อแปลงเสียงเสร็จ TTS ก็จะส่ง [5] ผลลัพธ์กลับไปให้ผู้ที่โทรเข้ามาได้ฟัง ฐานข้อมูลฝั่งระบบตอบรับอัตโนมัติ IVR
เครื่องมือที่ใช้ในการพัฒนา Trixbox 2.2.4 (Open Source) Asterisk โอเพนซอร์ส IP PBX ซอฟต์แวร์ freePBX หน้าเว็บที่เป็นเครื่องมือสำหรับผู้ใช้งาน trixbox X-Lite 3.0 for Windows (Free Software) MySQL Database Server (Open Source) Vaja Web Services Festival (Open Source)
การออกแบบระบบตอบรับอัตโนมัติ Start โทรศัพท์ เข้ามาที่ระบบ รับสาย เลือกภาษา กด 1 yes no เป็นการออกแบบขั้นตอนการทำงานของระบบตอบรับอัตโนมัติ เริ่มต้นเมื่อมีผู้โทรศัพท์เข้ามาที่ระบบตอบรับอัตโนมัติ ระบบตอบรับอัตโนมัติก็จะทำการรับสายแล้วให้ผู้ใช้ทำการเลือกภาษาที่จะใช้งาน ถ้ากด 1 จะใช้งานเป็นภาษาอังกฤษ แต่ถ้าไม่กดก็จะใช้งานเป็นภาษาไทยโดยอัตโนมัติ ใช้งานเป็น ภาษาไทย ใช้งานเป็น ภาษาอังกฤษ A
การออกแบบระบบตอบรับอัตโนมัติ A ป้อนรหัสนักศึกษาและวันเดือนปีเกิด ดึงข้อมูลนักศึกษา ตรวจสอบ พบผู้ใช้งาน no yes เมื่อทำการเลือกภาษาเสร็จต่อไปก็จะเป็นตรวจสอบผู้ใช้งาน โดยให้ผู้ใช้ป้อนรหัสนักศึกษาและวันเดือนปีเกิดเข้าไป ระบบก็จะทำการดึงข้อมูลนักศึกษาจากฐานข้อมูลแล้วมาตรวจสอบผู้ใช้ ถ้าไม่พบผู้ใช้งานก็ให้ป้อนรหัสนักศึกษาและวันเดือนปีเกิดเข้าไปใหม่ซึ่งจะสามารถทำได้ 3 ครั้งติดต่อกัน แต่ถ้าพบผู้ใช้งานก็จะสามารถเข้าสู่ระบบเพื่อใช้งานระบบตอบรับอัตโนมัติเพื่อผลการเรียนของนักศึกษาได้ เข้าสู่ระบบ B
การออกแบบระบบตอบรับอัตโนมัติ B C เลือกเมนู ฟังผลการเรียน กด 1 ฟังผลการเรียนเทอมล่าสุด yes no ฟังผลการเรียน ตามปีการศึกษา และภาคเรียน D กด 2 yes เมื่อเข้ามาสู่ระบบเรียบร้อยแล้วก็จะมีเมนูมาให้เลือกเพื่อฟังผลการเรียน โดยกด 1 เพื่อเพื่อฟังผลการเรียนเทอมล่าสุด กด 2 เพื่อฟังผลการเรียนตามาปีการศึกษาและภาคเรียน หรือกด 0 เพื่อออกจากระบบ ถ้าไม่มีการกดก็ให้กลับไปเลือกเมนูเพื่อฟังผลการเรียนใหม่ no B ออกจากระบบ กด 0 no yes G
ลำดับการทำงานและเมนูของระบบตอบรับอัตโนมัติ D C ป้อนปีการศึกษา และภาคเรียน ดึงข้อมูล ผลการเรียน E ส่งเสียงให้ผู้ที่ โทรศัพท์เข้ามาฟัง แปลงข้อมูล ผลการเรียนเป็นเสียง หลังจากที่เลือกเมนูเพื่อฟังผลการเรียนเสร็จ ถ้าเป็นการฟังผลการเรียนเทอมล่าสุดก็จะดึงข้อมูลผลการเรียนจากฐานข้อมูลเลย แต่ถ้าเป็นการฟังผลการเรียนตามาปีการศึกษาและภาคเรียนจะต้องป้อนปีการศึกษาและภาคเรียนก่อนแล้วก็จะดึงข้อมูลผลการเรียนจากฐานข้อมูล จากนั้นก็จะทำการแปลงข้อมูลผลการเรียนเป็นเสียงแล้วส่งไปให้ผู้ใช้ฟัง F
การออกแบบระบบตอบรับอัตโนมัติ F เลือกเมนู ทำงานต่อไป E ฟังซ้ำ กด 1 yes no เมื่อฟังผลการเรียนเสร็จก็จะเลือกเมนูเพื่อทำงานต่อไป โดยกด 1 เพื่อฟังซ้ำ กด 2 เพื่อกลับสู่เมนูหลัก และกด 0 เพื่อออกจากระบบ B กลับสู่เมนูหลัก กด 2 yes no G ออกจากระบบ กด 0 yes no
การออกแบบระบบตอบรับอัตโนมัติ G วางสาย Stop โดยการออกจากระบบก็คือการวางสายนั่นเอง
การออกแบบฐานข้อมูลในฝั่งของระบบตอบรับอัตโนมัติ ER-Diagram ของ stdgrade ฐานข้อมูลชื่อ stdgrade จาก ER-Diagram ประกอยด้วย Entity student กับ course โดยมี Relation คือ grade
การออกแบบฐานข้อมูลในฝั่งของระบบตอบรับอัตโนมัติ Database Layout ของ stdgrade ซึ่งนำมาสร้างเป็นตารางได้ 3 ตาราง คือ student course และ grade ดังรูป
การออกแบบเว็บเซอร์วิสเพื่อดึงข้อมูลจากฐานข้อมูลของสำนักทะเบียน get_student ร้องขอข้อมูลเกี่ยวกับนักศึกษาจะเรียกใช้ปีการศึกษาละครั้งหลังเปิดภาคเรียนแรก 1 เดือน get_course ร้องขอรายละเอียดของวิชาที่เปิดสอนจะเรียกใช้ภาคการศึกษาละครั้งหลังเปิดภาคเรียน 1 เดือน get_grade ร้องขอเกรดของนักศึกษาแต่ละคน โดยมีเวลาของเกรดออกเป็นตัวกำหนดเงื่อนไขในการเรียกใช้ เมธอดของเว็บเซอร์วิสที่ใช้ดึงข้อมูลจากฐานข้อมูลของสำนักทะเบียน มีด้วยกัน 3 เมธอดคือ เมธอด get_student, get_course, get_grade โดยที่ เมธอด get_student นี้จะเป็นเมธอดร้องขอข้อมูลเกี่ยวกับนักศึกษาเช่น รหัสนักศึกษา ชื่อนักศึกษาทั้งภาษาไทยและอังกฤษ รวมถึงวันเดือนปีเกิดเมธอดนี้จะเรียกปีการศึกษาละครั้ง โดยจะเรียกเมื่อเปิดภาคเรียนแรกไปแล้ว 1 เดือนเพื่อให้ได้ข้อมูลที่ไม่มีการเปลี่ยนแปลงอีก เมธอด get_course จะเป็นเมธอดร้องขอข้อมูลเกี่ยวรายวิชาที่เปิดทั้งหมดในภาคเรียนนั้นๆข้อมูลที่จะได้มา เช่น รหัสวิชา ชื่อวิชาภาษาไทยและอังกฤษ และหน่วยกิจ ของวิชานั้นเมธอดนี้จะถูกเรียกใช้เทอมละครั้งหลัง เปิดเทอม 1 เดือน เพื่อให้ได้ข้อมูลที่ไม่มีการเปลี่ยนแปลง เมธอด get_grade เป็นเมธอดที่ใช้ร้องขอข้อมูลเกี่ยวกับเกรดของแต่ละรายวิชาของเทอมนั้นๆข้อมูลที่จะได้มาคือ รหัสนักศึกษา คือเจ้าของเกรด รหัสวิชา ภาคการเรียน ปีการศึกษา เวลาที่ออก ผลเกรด และ ระบบเกรด โดย ก่อนทำการเรียกใช้ จะทำการเปรียบเวลาที่บรรทึกเกรดล่าสุดระหว่างฐานข้อมูลของสำนักทะเบียนและฐานข้อมูลของระบบตอบรับ หมายความว่า ถ้า เวลาที่บรรทึกเกรดในฐานข้อมูลของสำนักทะเบียนมากกว่า แสดงว่ามีการเปลี่ยนแปลงเกรด ก็จะทำการเรียกใช้ เมธอดนี้
ความคืบหน้าของโครงการ หลังจากที่ได้ออกแบบระบบเรียบร้อยแล้ว จากนี้ก็เป็นการพัฒนาระบบ ซึ่งช่วงนี้เป็นการติดตั้งและทดสอบโปรแกรม โดยได้ติดตั้ง trixbox ทดลองใช้โปรแกรมโทรศัพท์ ทดลองเรียกใช้วาจาเว็บเซอร์วิส และทดลองสร้างเว็บเซอร์วิสร้องขอข้อมูลจากฐานข้อมูล Mysql
ปัญหาที่พบและแนวทางแก้ไข ยังไม่สามารถเรียกวาจาเว็บเซอร์วิสได้สมบูรณ์ ไม่สามารถติดตั้ง Oracle Database Server บนลีนุกซ์ CentOS ได้ แนวทางแก้ไข ส่งอีเมลไปสอบถามปัญหาที่วาจาเว็บเซอร์วิสทำงานได้ไม่สมบูรณ์ เปลี่ยนไปติดตั้ง MySQL Database Server แทน ปัญหาที่พบ เมื่อเริ่มติดตั้งและพัฒนาเว็บเซอร์วิส คือ ยังไม่สามารถเรียกใช้วาจาเว็บเซอร์วิสได้ วาจาเว็บเซอร์วิสเนี้ยจะเป็นเว็บเซอร์วิสที่แปลงข้อความเป็นเสียงพูด ในการเรียกใช้นั้นเราจะส่งข้อความที่ต้องการแปลงเป็นเสียงพูดไปแล้วทางเว็บเซอร์วิสจะแปลงเป็นเสียงในรูปแบบของไฟล์นามสกุล .wav และจะส่งชื่อของไฟล์นั้นกลับมา และให้ผู้ใช้ไปดาวโหลดไฟล์นั้นเอง แต่ปัญหามีอยู่ว่าไม่พบตัวไฟล์นั้น เพื่อจะแก้ปัญหานี้ทางเราจะส่งอีเมลไปสอบถามปัญหาดังกล่าวกับทางหน่วยปฏิบัติการวิจัยวิทยาการมนุษยภาษา ของ NETEC เพื่อให้ทราบว่าปัญหาที่พบเป็นเพราะสาเหตุใด และอีกปัญหาหนึ่งก็คือ ไม่สามารถติดตั้ง Oracle Database Server บน Linux CentOS ได้ เพราะ Oracle Database Server นี้ใช้ได้เฉพาะกับ Linux rad hat แต่ทางเราไม่สามารถเปลี่ยนไปใช้ Linux red hat ได้เพราะโปรแกรม trixbox สามารถใช้ได้บน Linux CentOS เท่านั้นเนื่องด้วยเซิร์ฟเวอร์ของเรามีเพียงเครื่องเดียว ทางเราจึงตัดสินใจเปลี่ยนมาใช้ Mysql แทน
แผนการดำเนินงานต่อไป ตรวจสอบการทำงานซอฟต์แวร์ที่จะใช้ในการพัฒนาระบบ ศึกษาฐานข้อมูลที่ได้รับมาจากสำนักทะเบียน พัฒนาเว็บเซอร์วิสที่ใช้ร้องขอข้อมูลจากสำนักทะเบียน พัฒนาระบบตอบรับอัตโนมัติตามที่ได้ออกแบบไว้ ตรวจสอบการทำงานซอฟต์แวร์ที่จะใช้ในการพัฒนาระบบ ศึกษาฐานข้อมูลที่ได้รับมาจากสำนักทะเบียน พัฒนาเว็บเซอร์วิสที่ใช้ร้องขอข้อมูลจากสำนักทะเบียน พัฒนาระบบตอบรับอัตโนมัติตามที่ได้ออกแบบไว้
คำถามและข้อเสนอแนะ
จบการนำเสนอ