1 / 23

PickApp BAR FaceBook Application

PickApp BAR FaceBook Application. By Yaniv Kesner & Amir Darmon. Presentation Content. Basic concept Technologies we have used The Design Problems, challenges & solutions Educational Gain. Basic concept. Basic concept. FaceBook application based on

hina
Download Presentation

PickApp BAR FaceBook Application

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. PickApp BAR FaceBook Application By Yaniv Kesner & Amir Darmon

  2. Presentation Content • Basic concept • Technologies we have used • The Design • Problems, challenges & solutions • Educational Gain

  3. Basic concept

  4. Basic concept • FaceBook application based on • FaceBook’s developers environment • Multi-User web chat, where only • FaceBook’s users can use. • users can chat with their friends / or make • new friends – “social networking” • GUI looks like a virtual bar

  5. Basic concept • Besides chating in a public “Main room” • the users can chat in private messaging • user can identify another user by exploring • his/hers FaceBook’s profile. • Each user can play his favorite song, • using a built in “Juke Box”.

  6. Technologies we have used

  7. Technologies we have used • FaceBook’s Developer suite – • providing a full API to users data • All user’s data that was extracted from • facebook & all chat logs & management • data is being stored and organized • by MySQL server. • Server-Side processes & functions were • programmed with PHP.

  8. Technologies we have used • Client-Side functions were implemented • with JAVA Script & HTML Tags. • Client-Server communication using • AJAX technology , inverting DB to XML • data. • Multimedia introduction by Adobe FLASH. • Full compatibility with MS-IE7 & FireFox • Mozilla 2.0.0.14

  9. The Design

  10. The Design • studying the FaceBook’s Developers • environment. (FBML, canvas, IFrames) and • it’s capabilities. • Setting up a stand alone web server • outside the faculty, connected 24 hr. to the • Internet. (studying of PHP & SQL) • Determine the application’s features and • characteristics.

  11. The Design • Dividing tasks to files & methods. • Setting up SQL tables after ERD design, • & decisions about primary keys & • performance trade-offs. • Implementing a first simple draft , without • GUI, only functionality. • After first implementation Debug & test, • expanding functionality & GUI.

  12. User logging into Facebook’s interface. Running the application from FaceBook applications The Design so, How do things work ? (in steady sate…)

  13. The relevant user record in the SQL USERS table is getting ONLINE status After watching the intro the user is logged into the application and ready to use it The Design

  14. When user typing in a message and press enter The message is being transferred to the server The Design Message: Hello world ! JS Function ChatMsgToDB in functions.php file, preparing AJAX post transaction to the server Transaction is being sent to the server msgToDB.php file connecting to SQL server (using connectToDB.php function) Message is being inserted into CHATLOG table @ SQL

  15. The Design In the background an endless loop running JS function named GetMsgFromDB from functions.php file, which generates AJAX request for the message. PHP file – GetMsgFromDB retrieves message data from CHATLOG SQL table, and send it to GetMsgFromDB function. The message is being parsed out of the AJAX transaction, and displayed in the messages window.

  16. The Design • Of course that in the background many • more processes and functions are being • executed : • Online users updates • song play / stop play • private chats being opened • users logging in & out • users changing seats

  17. Problems we faced & their solutions

  18. Problems we faced & their solutions How to update elements without refreshing the whole page ? Using AJAX - Creating asynchronous transaction How to update server / DB without calling a new php / html page ? AJAX updater transaction + XML DATA Tags. Creating server-side Process that checks the delta time in which the user is not active & setting the online to be 0 How to identify a situation where user closed the browser and terminated the application ?

  19. Problems we faced & their solutions Showing the user only the latest messages, preventing massive transport of SQL transactions updating a time stamp to each user, every constant cycle, & keeping track of last message seen. Setting id tag to each messeage. Id=0 means main room message. Id≠0 means sender id. Implementing private chats without holding different chat log to each one

  20. Educational Gain

  21. Educational Gain • Experiencing Web software development in WYSIWYG environment • Design & Decision making regarding software implementation

  22. Educational Gain • work with SQL & DB queries • Programming in PHP • Programming in Java Script • AJAX as “thinking way” • software development as a team • motivation - more than 70 users, and up !

  23. Any Questions ?

More Related