Micro Facebook Robot Project

January 9, 2013 7:18 pm Facebook, Project

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

แนวคิดการทำงานของระบบ

การทำงานของ Micro Facebook Robot ตัวนี้ จะเป็นการ Access หน้าแรกและ Ticker ของ Facebook Account โดยเริ่มจาก Facebook ของผมเอง แล้วต่อยอดไปยัง Facebook เพื่อนๆของผม เพื่อทำการเก็บยอดและวิเคราะห์ข้อมูล

Facebook SDK

การเขียนโปรแกรมให้ทำงานบน Facebook ได้ เราก็ต้องรู้โครงการและลำดับการทำงานของมันก่อน ว่ามันใช้คำสั่งใด และสามารถตั้งค่าอย่างไรให้ตรงกับความต้องการ แล้วก็ออกแบบมันออกมา ผมใช้เวลาศึกษาอยู่ประมาณ 1 วันเต็มๆ ถึงพอจะจับทางมันได้ (แต่ไม่ถึงกับเก่งอะไรหรอกนะ) แล้วนำ Facebook SDK มาใช้ควบคุม Facebook Open Graph ได้ครับ

ลงมือเขียนโปรแกรม

ผมใช้ภาษา php ในการเขียนโปรแกรม โดยผสมผสานกับ Facebook Open Graph ในการทำงาน โดยตัว Robot จะเป็น php+Facebook SDK พื้นฐานท่ี่ทาง Facebook ทำให้ โดยปรับแต่งเงื่อนไข Open Graph API นิดหน่อย กำหนดอัลกอริทึมในการวิเคราะห์ข้อมูลใหม่ แล้วเพิ่มการบันทึกค่าลงในฐานข้อมูล mysql เพิ่มเติม ส่วนหน้าสำหรับการแสดงผล จะใช้ php+mysql ในการเรียกค่ามาแสดง และใช้ Open Flash Chart ในการสรุปการแสดงผลในระบบกราฟ เพื่อสรุปค่าต่างๆ

ปัญหาที่พบ

หลังจากที่เขียนโปรแกรมออกมาเสร็จ ก็พบ bug หลังจากการใช้งาน เพราะตัว Robot ไม่สามารถบันทึกข้อมูลลงใน mysql ได้ เพราะ facebook มีการส่งข้อมูลที่มีอักษรพิเศษมา ทำให้โปรแกรม error ไป ต้องทำการเขียนโปรแกรมให้เพื่อตัดอักษรพิเศษออก และมีปัญหา เมื่อ Server ที่ตั้งที่ CSLox ไม่สามารถติดต่อ Facebook ได้ในเวลาที่กำหนด ทำให้ error ก็ต้องเปลี่ยนการตั้งหน่วงเวลาใหม่ เพื่อให้ติดต่อ Server ได้เร็วขึ้น

สามารถลองเข้าไปดูได้ที่ => http://tools.kusumoto.co/ticker/final/