KEMBAR78
Developing Facebook Application | PDF
Developing Facebook
    Application

       Wasu Khaodee
 Kanda Runapongsa Saikaew
   Computer Engineering
    Khon Kaen University
Facebook Application Types
 1. Run on web-browser
      1.1 A Website
      1.2 Canvas Application
    (Apps on Facebook.com)
 2. Run on a platform
      - Mobile Application
In this slide, we focus on developing Canvas Application
Focused Facebook APIs

1. Graph API
   The Graph API is the core of Facebook Platform, enabling
   you to read and write data to Facebook
   “nested query” is not supported by Graph API and in many
   cases, we need to get the data with multiple Graph API
   requests
2. FQL (Facebook Query Language)
   FQL is designed to condense Facebook queries and reduce
   response size
   Has similar syntax with SQL but there are somethings that
   cannot be done in FQL such as
      No Group by
What is Graph API?

 At Facebook's core is the social graph; people and the connections
 they have to everything they care about
 The Graph API presents a simple, consistent view of the Facebook
 social graph, uniformly representing objects in the graph (e.
 g., people, photos, events, and pages) and the connections
 between them (e.g., friend relationships, shared content, and photo
 tags)
 Every object in the social graph has a unique ID
  You can access the properties of an object by requesting https:
 //graph.facebook.com/ID
What is FQL?

 Facebook Query Language, or FQL, enables you to use a SQL-style
 interface to query the data exposed by the Graph API. It provides for
 some advanced features not available in the Graph API, including
 batching multiple queries into a single call
 You can execute FQL queries by fetching https://api.facebook.
 com/method/fql.query?query=QUERY. You can specify a response
 format as either XML or JSON with the format query parameter.
 Example
 SELECT name FROM user WHERE uid = me()
Facebook Software
Development Kit (SDK)
Here we are using PHP and Java Script

  - PHP SDK where source
     here : https://github.com/facebook/php-sdk/

  - Java Script where source
     here : http://connect.facebook.net/en_US/all.js
Application Permissions
Applications Permissions
 http://developers.facebook.
com/docs/authentication/permissions

Your App got only public data access without request
more permission.

Likes your app need to post some content
"publish_stream" need to be requested.
Creating Your Canvas App (1/4)

First goto : http://www.facebook.com/developers/




                                  here
Creating Your Canvas App (2/4)




            Your Apps Name here


                       And read the Terms
then create the app
Creating Your Canvas App (3/4)




                   Apps URL

        host URL
Creating Your Canvas App (4/4)


For Apps URL is where user access to your app.

Like http://apps.facebook.com/fbpublishpage

And host URL is where your Code is located.

Here we choose Canvas type as IFrame according to
Developer Roadmap
Create App Instance

get the SDK here : facebook.php

or download here : https://github.com/facebook/php-
sdk/archives/master
Get Session and Login

                      //Get App Session


                      //Get User Info to check the
                     login status


                                    //Get login URL (also
                                    grants permissions)




        //Just login if the user did not login
Using Graph API to See Feed




      Result for the code above
Using Graph API to Post Status




destination user id         identification of the author
                  to post                           the message


                 and this is the result
Using FQL to See Picture URL



  FQL command is like SQL such as SELECT, FROM,
  WHERE, IN or LIMIT

             and this is the result
Using Javascript with PHP to save ID of a
specified friend name


                    //Get current session



                    //Do some FQL call
Using JavaScript with PHP to post
message to a friend's wall



              //Send message with Graph API




                Current UI
Result from posting message to a
friend's wall
          result from the program
Reference
 http://developers.facebook.com/docs/
 http://www.slideshare.net/csaila/fql-overview
 http://www.takwing.idv.hk/
 Sample Code

Developing Facebook Application

  • 1.
    Developing Facebook Application Wasu Khaodee Kanda Runapongsa Saikaew Computer Engineering Khon Kaen University
  • 2.
    Facebook Application Types 1. Run on web-browser 1.1 A Website 1.2 Canvas Application (Apps on Facebook.com) 2. Run on a platform - Mobile Application In this slide, we focus on developing Canvas Application
  • 3.
    Focused Facebook APIs 1.Graph API The Graph API is the core of Facebook Platform, enabling you to read and write data to Facebook “nested query” is not supported by Graph API and in many cases, we need to get the data with multiple Graph API requests 2. FQL (Facebook Query Language) FQL is designed to condense Facebook queries and reduce response size Has similar syntax with SQL but there are somethings that cannot be done in FQL such as No Group by
  • 4.
    What is GraphAPI? At Facebook's core is the social graph; people and the connections they have to everything they care about The Graph API presents a simple, consistent view of the Facebook social graph, uniformly representing objects in the graph (e. g., people, photos, events, and pages) and the connections between them (e.g., friend relationships, shared content, and photo tags) Every object in the social graph has a unique ID You can access the properties of an object by requesting https: //graph.facebook.com/ID
  • 5.
    What is FQL? Facebook Query Language, or FQL, enables you to use a SQL-style interface to query the data exposed by the Graph API. It provides for some advanced features not available in the Graph API, including batching multiple queries into a single call You can execute FQL queries by fetching https://api.facebook. com/method/fql.query?query=QUERY. You can specify a response format as either XML or JSON with the format query parameter. Example SELECT name FROM user WHERE uid = me()
  • 6.
    Facebook Software Development Kit(SDK) Here we are using PHP and Java Script - PHP SDK where source here : https://github.com/facebook/php-sdk/ - Java Script where source here : http://connect.facebook.net/en_US/all.js
  • 7.
    Application Permissions Applications Permissions http://developers.facebook. com/docs/authentication/permissions Your App got only public data access without request more permission. Likes your app need to post some content "publish_stream" need to be requested.
  • 8.
    Creating Your CanvasApp (1/4) First goto : http://www.facebook.com/developers/ here
  • 9.
    Creating Your CanvasApp (2/4) Your Apps Name here And read the Terms then create the app
  • 10.
    Creating Your CanvasApp (3/4) Apps URL host URL
  • 11.
    Creating Your CanvasApp (4/4) For Apps URL is where user access to your app. Like http://apps.facebook.com/fbpublishpage And host URL is where your Code is located. Here we choose Canvas type as IFrame according to Developer Roadmap
  • 12.
    Create App Instance getthe SDK here : facebook.php or download here : https://github.com/facebook/php- sdk/archives/master
  • 13.
    Get Session andLogin //Get App Session //Get User Info to check the login status //Get login URL (also grants permissions) //Just login if the user did not login
  • 14.
    Using Graph APIto See Feed Result for the code above
  • 15.
    Using Graph APIto Post Status destination user id identification of the author to post the message and this is the result
  • 16.
    Using FQL toSee Picture URL FQL command is like SQL such as SELECT, FROM, WHERE, IN or LIMIT and this is the result
  • 17.
    Using Javascript withPHP to save ID of a specified friend name //Get current session //Do some FQL call
  • 18.
    Using JavaScript withPHP to post message to a friend's wall //Send message with Graph API Current UI
  • 19.
    Result from postingmessage to a friend's wall result from the program
  • 20.