Facebook Platform
  Hack Thursday - CW 40

                 Geison Quevedo
                      geisonq@gmail.com
                    fb.me/geison.quevedo



                     William Dias
                     wrddias@gmail.com
                           fb.me/diaswrd
Overview
APPs (Tipos de App, Como criar)
PHP SDK
FQL
JS SDK
Dialogs
Graph API
Tools
Platform terms
SDKS
Use of an SDK is not a requirement!

Facebook's official SDKs:

●   JavaScript
●   PHP
●   iOS
●   Android
USING
● Websites
  ○ Social Plugins
  ○ Facebook Connect
  ○ Open Graph Protocol


● Apps on Facebook
  ○ App Center
  ○ Page Tabs


● Mobile Apps
SDK PHP
                 O que é?


    SDK php fornece ricas configurações e
 funcionalidades no server-side para acessar
   funcionalidades do Facebook através de
              chamadas da API.
SDK PHP


 O SDK do PHP pode trabalhar em conjunto
    como SDK JavaScript para fornecer
gerenciamento de sessão entre cliente e app.
SDK PHP
INSTALANDO E CONFIGURANDO

1. Criar uma APP (APP_ID, APP_SECRET)
2. Baixar o SDK GIT
3. Adicionar o arquivo facebook.php na
   aplicação
4. Instanciar o objeto Facebook com o APP_ID
   e APP_SECRET
SDK PHP
   O SDK do PHP pode ser usado para dar
   suporte ao registro e login para o seu site
  usando a conta dos usuários do Facebook.

Funcionalidades de login:
$facebook->getLoginUrl();
$facebook->getLogoutUrl();
SDK PHP
             Signed_request

  O parametro signed_request do facebook
  passa dados para uma aplicação um em
           diferentes ambientes

O parametro signed_request é POSTADO para
  uma aplicação quando a app é carregada
   dentro de uma app do tipo Canvas page.
SDK PHP




   Signed Request DOCUMENTATION
FQL - Facebook Query Language

 Permite você usar uma interface semelhante
 ao SQL para consultar dados atravez da API
                   Graph.

    Permite algumas features avanças no
          disponível na API Graph.
FQL
Example

          SELECT uid2 FROM friend WHERE uid1=me()

               HTTP GET request to /fql?q=query
FQL


              Table Profile

      Documentation let's read! Go!
JS SDK
Reference:
https://developers.facebook.com/docs/reference/javascript/



Sample:
<div id="fb-root"></div>
<script>
 window.fbAsyncInit = function() {
       FB.init({
            appId    : 'YOUR_APP_ID', // App ID
            cookie : true, // enable cookies to allow the server to access the session
            xfbml   : true // parse XFBML
        });

      // Additional initialization code here
 };

 // Load the SDK Asynchronously
 (function(d){
       var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
       if (d.getElementById(id)) {return;}
       js = d.createElement('script'); js.id = id; js.async = true;
       js.src = "//connect.facebook.net/en_US/all.js";
       ref.parentNode.insertBefore(js, ref);
  }(document));
</script>
JS SDK
Use cases:
  ● Authentication & Authorization
      FB.getLoginStatus(), FB.login(), FB.getAuthResponse()

   ● API Calls
      FB.api('/me', function(response) {
          alert('Your name is ' + response.name);
      });

   ● Platform Dialogs
      FB.ui({
          method: 'feed',
          message: 'getting educated about Facebook Connect',
          (...)
      });
Social Plugins
Maneira simples e rápida de integrar seu website com as
principais funcionalidades disponíveis no Facebook.

   Playground:
      http://developers.facebook.com/docs/plugins/
DIALOGS


  Dialogs provem uma interface de maneira
  simples no qual provem funcionalidades
sociais para o usuário. Dialogs não requerem
  permissões por que requerem iteração do
                  usuário.
DIALOGS
Atualmente existem 7 'Dialogs' disponíveis

●   Add Page Tab Dialog
●   Feed Dialog
●   Friends Dialog
●   OAuth Dialog
●   Pay Dialog
●   Requests Dialog
●   Send Dialog
TOOLS
Graph API Explorer
https://developers.facebook.com/tools/explorer

JavaScript Test Console
https://developers.facebook.com/tools/console/

Open Graph Protocol
http://ogp.me/

Debugger
https://developers.facebook.com/tools/debug
Policies and Terms
● Platform Policies Checklist
   https://developers.facebook.com/docs/guides/policy/policy_checklist/

● Detalhes importantes
   ○    O uso de AdSense (Google) em apps no facebook não é permitido. A
        plataforma disponibiliza uma lista de Ad-providers que são aceitos
        pela plataforma. http://developers.facebook.com/adproviders/
        (Viva a guerra fria)
   ○    O único método de pagamento (caso a sua app venha a cobrar
        alguma coisa do usuário) aceito é o Facebook Payments. http:
        //developers.facebook.com/docs/payments/
        (E lá se vão 30%)
Valeu!
 Questions?
Hack Thursday - CW 40

               Geison Quevedo
                    geisonq@gmail.com
                  fb.me/geison.quevedo



                   William Dias
                   wrddias@gmail.com
                         fb.me/diaswrd

Facebook Platform - Hack Thursday CW 40

  • 1.
    Facebook Platform Hack Thursday - CW 40 Geison Quevedo geisonq@gmail.com fb.me/geison.quevedo William Dias wrddias@gmail.com fb.me/diaswrd
  • 2.
    Overview APPs (Tipos deApp, Como criar) PHP SDK FQL JS SDK Dialogs Graph API Tools Platform terms
  • 3.
    SDKS Use of anSDK is not a requirement! Facebook's official SDKs: ● JavaScript ● PHP ● iOS ● Android
  • 4.
    USING ● Websites ○ Social Plugins ○ Facebook Connect ○ Open Graph Protocol ● Apps on Facebook ○ App Center ○ Page Tabs ● Mobile Apps
  • 5.
    SDK PHP O que é? SDK php fornece ricas configurações e funcionalidades no server-side para acessar funcionalidades do Facebook através de chamadas da API.
  • 6.
    SDK PHP OSDK do PHP pode trabalhar em conjunto como SDK JavaScript para fornecer gerenciamento de sessão entre cliente e app.
  • 7.
    SDK PHP INSTALANDO ECONFIGURANDO 1. Criar uma APP (APP_ID, APP_SECRET) 2. Baixar o SDK GIT 3. Adicionar o arquivo facebook.php na aplicação 4. Instanciar o objeto Facebook com o APP_ID e APP_SECRET
  • 8.
    SDK PHP O SDK do PHP pode ser usado para dar suporte ao registro e login para o seu site usando a conta dos usuários do Facebook. Funcionalidades de login: $facebook->getLoginUrl(); $facebook->getLogoutUrl();
  • 9.
    SDK PHP Signed_request O parametro signed_request do facebook passa dados para uma aplicação um em diferentes ambientes O parametro signed_request é POSTADO para uma aplicação quando a app é carregada dentro de uma app do tipo Canvas page.
  • 10.
    SDK PHP Signed Request DOCUMENTATION
  • 11.
    FQL - FacebookQuery Language Permite você usar uma interface semelhante ao SQL para consultar dados atravez da API Graph. Permite algumas features avanças no disponível na API Graph.
  • 12.
    FQL Example SELECT uid2 FROM friend WHERE uid1=me() HTTP GET request to /fql?q=query
  • 13.
    FQL Table Profile Documentation let's read! Go!
  • 14.
    JS SDK Reference: https://developers.facebook.com/docs/reference/javascript/ Sample: <div id="fb-root"></div> <script> window.fbAsyncInit = function() { FB.init({ appId : 'YOUR_APP_ID', // App ID cookie : true, // enable cookies to allow the server to access the session xfbml : true // parse XFBML }); // Additional initialization code here }; // Load the SDK Asynchronously (function(d){ var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0]; if (d.getElementById(id)) {return;} js = d.createElement('script'); js.id = id; js.async = true; js.src = "//connect.facebook.net/en_US/all.js"; ref.parentNode.insertBefore(js, ref); }(document)); </script>
  • 15.
    JS SDK Use cases: ● Authentication & Authorization FB.getLoginStatus(), FB.login(), FB.getAuthResponse() ● API Calls FB.api('/me', function(response) { alert('Your name is ' + response.name); }); ● Platform Dialogs FB.ui({ method: 'feed', message: 'getting educated about Facebook Connect', (...) });
  • 16.
    Social Plugins Maneira simplese rápida de integrar seu website com as principais funcionalidades disponíveis no Facebook. Playground: http://developers.facebook.com/docs/plugins/
  • 17.
    DIALOGS Dialogsprovem uma interface de maneira simples no qual provem funcionalidades sociais para o usuário. Dialogs não requerem permissões por que requerem iteração do usuário.
  • 18.
    DIALOGS Atualmente existem 7'Dialogs' disponíveis ● Add Page Tab Dialog ● Feed Dialog ● Friends Dialog ● OAuth Dialog ● Pay Dialog ● Requests Dialog ● Send Dialog
  • 19.
    TOOLS Graph API Explorer https://developers.facebook.com/tools/explorer JavaScriptTest Console https://developers.facebook.com/tools/console/ Open Graph Protocol http://ogp.me/ Debugger https://developers.facebook.com/tools/debug
  • 20.
    Policies and Terms ●Platform Policies Checklist https://developers.facebook.com/docs/guides/policy/policy_checklist/ ● Detalhes importantes ○ O uso de AdSense (Google) em apps no facebook não é permitido. A plataforma disponibiliza uma lista de Ad-providers que são aceitos pela plataforma. http://developers.facebook.com/adproviders/ (Viva a guerra fria) ○ O único método de pagamento (caso a sua app venha a cobrar alguma coisa do usuário) aceito é o Facebook Payments. http: //developers.facebook.com/docs/payments/ (E lá se vão 30%)
  • 21.
    Valeu! Questions? Hack Thursday- CW 40 Geison Quevedo geisonq@gmail.com fb.me/geison.quevedo William Dias wrddias@gmail.com fb.me/diaswrd