SlideShare uma empresa Scribd logo
1 de 45
Opa, como vai?


           Jota Júnior

           www.jotajunior.net

           jotavrj@gmail.com

           Exemplos de código desta palestra em:
           www.jotajunior.net/latinoware
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
E qual o nosso foco?




→ O Open Source da palestra é o PHP


→ Facebook e Twitter: principais para
projetos comerciais e com mais
usuários
PHP nas Mídias Sociais

 ●Objetivo:
  → Dar uma ideia do funcionamento de aplicativos
 de redes sociais e as ferramentas disponíveis para
 isso;

 ●Não é objetivo:
  → Torná-lo um mestre na programação nessa área
 ou apresentar todas as formas de trabalhar
Importância

               → Avaliada em mais de
               US$ 20 bilhões




              → Tendência e recurso interessante
Ou seja...
    $$$$$$$$$$$$$
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
E como o PHP trabalha?

   Redes oferecem interface, que permite uma
    comunicação padronizada entre a rede e os
    softwares que criamos; as APIs!

   Objetivos das APIs:
    → Fornecer informações do usuário;
    → Oferecer informações de autenticação;
    → Permitir que manipule a conta do usuário
E como o PHP trabalha?




     Você está criando um aplicativo social!
OAuth

   OAuth (Open Authentication) é uma forma da
    mídia social conceder acesso ao software
    sem ceder informações críticas do usuário
    (senha);

   Ao aceitar um aplicativo no Facebook, por
    exemplo, está fazendo uso do OAuth.

   App key, app secret, access token e
    permissões.
OAuth

    Vantagens:
   Lidar de forma padrão com a rede social;
   Não solicitar informações críticas do usuário
    (credibilidade).


    Desvantagem:
   Limita o software a utilizar as informações da
    forma que a rede social definir.
OAuth
Sempre há espaço para literatura



”Reduza ao máximo requisições às bibliotecas
das redes sociais”
                    - Caio F. Abreu
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Interação PHP ↔ Twitter

   Biblioteca theMattHarris (tmhOauth) muito
    satisfatória;

   REST Api bem documentada e parecida com a
    do Facebook;

   Documentação de fácil entendimento
    ( https://dev.twitter.com/docs/api )
Interação PHP ↔ Twitter

 Registrando o aplicativo:
Interação PHP ↔ Twitter

Forma de autenticação:




                           Código pronto
Interação PHP ↔ Twitter

 Como lidar com os recursos disponíveis
Interação PHP ↔ Twitter
 Mais recursos disponíveis...




            https://dev.twitter.com/docs/api/1.1
Interação PHP ↔ Twitter

 Exemplo consistente de implementação
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Interação PHP ↔ Facebook

   Forma de lidar muito facilitada e padrão;

   Extraordinariamente completa;

   Existe o PHP SDK, Javascript SDK e ainda dá
    para fazer tudo através de requests a URLs do
    REST
Interação PHP ↔ Facebook

    Registrando o aplicativo:
   Vá em https://developers.facebook.com/apps e
    clique em ”Create new app”.

   Define o nome, domínio (só aceitará requests
    de lá), descrição e etc;
Interação PHP ↔ Facebook

    Como lidar com os recursos disponíveis
   Utiliza a Graph Api ( graph.facebook.com )


   Pode criar links, utilizando o file_get_contents();
    Pode utilizar o PHP SDK, utilizando seus recursos
    próprios;
    Ou até requisições através de JS e plugins.


   Acessando graph.facebook.com/zuck , retornará
    informações em json sobre o perfil de Mark
    Zuckerberg.
Interação PHP ↔ Facebook
   Diferenças das formas de interação:
    → Por Links:
      → Monta links que são chamados através de
      file_get_contents (precisa da função habilitada)
      → Precisa ter o access token gravado em algum lugar
    → Pelo PHP SDK:
      → Por utilizar uma biblioteca, levemente
mais processamento
     → Solução mais padronizada
Interação PHP ↔ Facebook

   Qual a diferença?
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Interação PHP ↔ Facebook (link)

 Forma de autenticação (através de link)




                                 Eu, de novo :(
Interação PHP ↔ Facebook (link)

     Como lidar com os recursos disponíveis
<?php
$objeto_com_informacoes = json_decode( file_get_contents(“http://graph.facebook.com/zuck”) );
?>



E é simples assim mesmo. Você pode acessar qualquer informação
dessa forma: http://graph.facebook.com/OBJETO
Por exemplo, http://graph.facebook.com/coca-cola vai para a página da
Coca-Cola (e se adicionar /picture , como manda a lógica, retorna a
imagem oficial da página).
Interação PHP ↔ Facebook (link)

     Como lidar com os recursos disponíveis
    Alguns necessitam do access token:
<?php
$link = ”https://graph.facebook.com/me/likes?access_token=TOKEN”;
$objeto = json_decode( file_get_contents( $link ) );
?>
Interação PHP ↔ Facebook (link)

   Mais recursos disponíveis...
Abaixo listarei a lista de exemplos do próprio Facebook, que pode ser
encontrada (em inglês) em
http://developers.facebook.com/docs/reference/api/
→ Acessando:
Amigos: https://graph.facebook.com/me/friends?access_token=...
Mural: https://graph.facebook.com/me/feed?access_token=...


→ Publicando:
https://graph.facebook.com/ID/OBJETO?
access_token=TOKEN&method=post&PARAMS
Interação PHP ↔ Facebook (link)

 Exemplo consistente de implementação
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Interação PHP ↔ Facebook (SDK)
→ O Facebook disponibiliza SDKs oficias para facilitar o desenvolvimento nos
softwares/linguagens JavaScript, PHP, iOS e Android.
https://developers.facebook.com/docs/sdks/


→ O PHP SDK oferece uma forma padronizada e confiável de fazer requisições sem ficar
montando links
* Pegando informações do usuário

require_once('facebook.php');                         Chama o arquivo
$config = array(
   'appId' => 'YOUR_APP_ID',
   'secret' => 'YOUR_APP_SECRET',                  Define id/senha do seu app
 );

 $facebook = new Facebook($config);                  Instancia

 $user_profile = $facebook->api('/me','GET');                Faz requisição!


→ É necessário apenas o download de três arquivos de poucos kbytes!
http://developers.facebook.com/docs/reference/php/download/
Interação PHP ↔ Facebook (SDK)
   Utilização de métodos
    Exemplo: Message
    ( http://developers.facebook.com/docs/reference/api/message/ )
Interação PHP ↔ Facebook (SDK)
      Fazendo uma verificação completa:




Mais exemplos em http://developers.facebook.com/docs/reference/php/facebook-api/
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
Interação PHP ↔ Facebook (FQL)
   O Facebook disponibiliza o FQL ( Facebook Query
    Language )


   Requisições à API são feitas assim como SQL de Bancos
    de Dados! Omg!


   Os objetos (feed, likes, message, etc) são como tabelas


   Só suporta requisições GET (só existe o SELECT)


   Suporta operadores lógicos (OR, AND) e outros recursos
    como IN clause
Interação PHP ↔ Facebook (FQL)




                 Parte com FQL




                Lista de tabelas e queries em:
                http://developers.facebook.com/docs/reference/fql/
Tópicos
   Introdução
   Conceitos
   Twitter
   Exemplos de código para Twitter
   Introdução ao Facebook
   Interação com Facebook através de links
   Exemplos de código para FB e links
   Interação com Facebook através de SDK
   Interação com Facebook utilizando o FQL
   Exemplos de código para FB com SDK e FQL
DÚVIDAS
MUITO OBRIGADO!

    Palestra e códigos em
http://jotajunior.net/latinoware

Mais conteúdo relacionado

Destaque

187 4 информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с
187 4  информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с187 4  информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с
187 4 информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120сddfefa
 
209 атласс. география. 5кл. 2016 -32с
209  атласс. география. 5кл. 2016 -32с209  атласс. география. 5кл. 2016 -32с
209 атласс. география. 5кл. 2016 -32сdfdkfjs
 
Satkartar Khalsa's paper on hematopoiesis
Satkartar Khalsa's paper on hematopoiesis Satkartar Khalsa's paper on hematopoiesis
Satkartar Khalsa's paper on hematopoiesis Satkartar Khalsa
 
Plano nacional 2013_(2).pt.es en español
Plano nacional 2013_(2).pt.es en españolPlano nacional 2013_(2).pt.es en español
Plano nacional 2013_(2).pt.es en españolNatalia Uruchi Osco
 
catedra upecista
catedra upecistacatedra upecista
catedra upecistalady1018
 
Unidad cinco estructura de datos
Unidad cinco estructura de datosUnidad cinco estructura de datos
Unidad cinco estructura de datosRené Sosa Arana
 
Comunicación sincrónica y_asincrónica_danna_lara
Comunicación sincrónica y_asincrónica_danna_laraComunicación sincrónica y_asincrónica_danna_lara
Comunicación sincrónica y_asincrónica_danna_laradannalara31
 
JS Tomar 1 ano de mandato
JS Tomar 1 ano de mandatoJS Tomar 1 ano de mandato
JS Tomar 1 ano de mandatoNuno Ferreira
 
Configurações das investigações e análise de acidentes
Configurações das investigações e análise de acidentesConfigurações das investigações e análise de acidentes
Configurações das investigações e análise de acidentesCassinha Oliveira
 

Destaque (20)

187 4 информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с
187 4  информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с187 4  информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с
187 4 информатика. 4кл. раб. тетр. в 2ч. ч.2-матвеева н.в. и др_2014 -120с
 
Semiconductores
SemiconductoresSemiconductores
Semiconductores
 
209 атласс. география. 5кл. 2016 -32с
209  атласс. география. 5кл. 2016 -32с209  атласс. география. 5кл. 2016 -32с
209 атласс. география. 5кл. 2016 -32с
 
Satkartar Khalsa's paper on hematopoiesis
Satkartar Khalsa's paper on hematopoiesis Satkartar Khalsa's paper on hematopoiesis
Satkartar Khalsa's paper on hematopoiesis
 
Diploma - PhD EUI
Diploma - PhD EUIDiploma - PhD EUI
Diploma - PhD EUI
 
Asset Management
Asset ManagementAsset Management
Asset Management
 
Plano nacional 2013_(2).pt.es en español
Plano nacional 2013_(2).pt.es en españolPlano nacional 2013_(2).pt.es en español
Plano nacional 2013_(2).pt.es en español
 
DVSc
DVScDVSc
DVSc
 
catedra upecista
catedra upecistacatedra upecista
catedra upecista
 
Unidad cinco estructura de datos
Unidad cinco estructura de datosUnidad cinco estructura de datos
Unidad cinco estructura de datos
 
Comunicación sincrónica y_asincrónica_danna_lara
Comunicación sincrónica y_asincrónica_danna_laraComunicación sincrónica y_asincrónica_danna_lara
Comunicación sincrónica y_asincrónica_danna_lara
 
JS Tomar 1 ano de mandato
JS Tomar 1 ano de mandatoJS Tomar 1 ano de mandato
JS Tomar 1 ano de mandato
 
Tugas ict
Tugas ictTugas ict
Tugas ict
 
Ministério realidade
Ministério realidadeMinistério realidade
Ministério realidade
 
Dip of Man1
Dip of Man1Dip of Man1
Dip of Man1
 
Cristian
CristianCristian
Cristian
 
Calculo1 aula15
Calculo1 aula15Calculo1 aula15
Calculo1 aula15
 
Configurações das investigações e análise de acidentes
Configurações das investigações e análise de acidentesConfigurações das investigações e análise de acidentes
Configurações das investigações e análise de acidentes
 
zendo_cost_wasting_rev
zendo_cost_wasting_revzendo_cost_wasting_rev
zendo_cost_wasting_rev
 
KNPC Diploma
KNPC DiplomaKNPC Diploma
KNPC Diploma
 

Semelhante a Introdução à programação para redes sociais com PHP

Desenvolvimento de Aplicativos para Facebook
Desenvolvimento de Aplicativos para FacebookDesenvolvimento de Aplicativos para Facebook
Desenvolvimento de Aplicativos para FacebookBruno Leite
 
Desenvolvimento de Aplicações para o Facebook em ASP .NET
Desenvolvimento de Aplicações para o Facebook em ASP .NETDesenvolvimento de Aplicações para o Facebook em ASP .NET
Desenvolvimento de Aplicações para o Facebook em ASP .NETComunidade NetPonto
 
Facebook Platform - Hack Thursday CW 40
Facebook Platform - Hack Thursday CW 40Facebook Platform - Hack Thursday CW 40
Facebook Platform - Hack Thursday CW 40William Dias
 
WordPress como um backend de seus aplicativos
WordPress como um backend de seus aplicativosWordPress como um backend de seus aplicativos
WordPress como um backend de seus aplicativosJackson F. de A. Mafra
 
Desenvolvimento de aplicativos para Facebook
Desenvolvimento de aplicativos para FacebookDesenvolvimento de aplicativos para Facebook
Desenvolvimento de aplicativos para FacebookKaton Agência Digital
 
WCPOA2019 - WordPress como um backend de seus aplicativos
WCPOA2019  - WordPress como um backend de seus aplicativosWCPOA2019  - WordPress como um backend de seus aplicativos
WCPOA2019 - WordPress como um backend de seus aplicativosJackson F. de A. Mafra
 
Criando e Usando Helpers
Criando e Usando HelpersCriando e Usando Helpers
Criando e Usando HelpersJoaoVagner
 
Desenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosDesenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosLucas Vegi
 
Integrando a Web Social e a Web Semântica com PHP
Integrando a Web Social e a Web Semântica com PHPIntegrando a Web Social e a Web Semântica com PHP
Integrando a Web Social e a Web Semântica com PHPOtávio Calaça Xavier
 
Utilizando a API do Live Messenger (MSN) com PHP
Utilizando a API do Live Messenger (MSN) com PHPUtilizando a API do Live Messenger (MSN) com PHP
Utilizando a API do Live Messenger (MSN) com PHPAlex Piaz
 
Apostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETApostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETJosé Corrêa Viana
 
apostila-desenvolvimento-asp-net
 apostila-desenvolvimento-asp-net apostila-desenvolvimento-asp-net
apostila-desenvolvimento-asp-netSandra Rocha
 
Desenvolvendo Aplicativos Sociais
Desenvolvendo Aplicativos SociaisDesenvolvendo Aplicativos Sociais
Desenvolvendo Aplicativos SociaisJorge Moisés Assis
 
Artigo de php
Artigo de phpArtigo de php
Artigo de phprobson
 

Semelhante a Introdução à programação para redes sociais com PHP (20)

Desenvolvimento de Aplicativos para Facebook
Desenvolvimento de Aplicativos para FacebookDesenvolvimento de Aplicativos para Facebook
Desenvolvimento de Aplicativos para Facebook
 
Conhecendo API do Facebook
Conhecendo API do FacebookConhecendo API do Facebook
Conhecendo API do Facebook
 
Desenvolvimento de Aplicações para o Facebook em ASP .NET
Desenvolvimento de Aplicações para o Facebook em ASP .NETDesenvolvimento de Aplicações para o Facebook em ASP .NET
Desenvolvimento de Aplicações para o Facebook em ASP .NET
 
Facebook Platform - Hack Thursday CW 40
Facebook Platform - Hack Thursday CW 40Facebook Platform - Hack Thursday CW 40
Facebook Platform - Hack Thursday CW 40
 
Api do Facebook
Api do FacebookApi do Facebook
Api do Facebook
 
File3
File3File3
File3
 
File3
File3File3
File3
 
WordPress como um backend de seus aplicativos
WordPress como um backend de seus aplicativosWordPress como um backend de seus aplicativos
WordPress como um backend de seus aplicativos
 
Desenvolvimento de aplicativos para Facebook
Desenvolvimento de aplicativos para FacebookDesenvolvimento de aplicativos para Facebook
Desenvolvimento de aplicativos para Facebook
 
WCPOA2019 - WordPress como um backend de seus aplicativos
WCPOA2019  - WordPress como um backend de seus aplicativosWCPOA2019  - WordPress como um backend de seus aplicativos
WCPOA2019 - WordPress como um backend de seus aplicativos
 
WordPress + REST API
WordPress + REST APIWordPress + REST API
WordPress + REST API
 
Criando e Usando Helpers
Criando e Usando HelpersCriando e Usando Helpers
Criando e Usando Helpers
 
Desenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetosDesenvolvimento web: PHP orientado a objetos
Desenvolvimento web: PHP orientado a objetos
 
Integrando a Web Social e a Web Semântica com PHP
Integrando a Web Social e a Web Semântica com PHPIntegrando a Web Social e a Web Semântica com PHP
Integrando a Web Social e a Web Semântica com PHP
 
Spring social
Spring socialSpring social
Spring social
 
Utilizando a API do Live Messenger (MSN) com PHP
Utilizando a API do Live Messenger (MSN) com PHPUtilizando a API do Live Messenger (MSN) com PHP
Utilizando a API do Live Messenger (MSN) com PHP
 
Apostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NETApostila - Desenvolvimento Web com ASP.NET
Apostila - Desenvolvimento Web com ASP.NET
 
apostila-desenvolvimento-asp-net
 apostila-desenvolvimento-asp-net apostila-desenvolvimento-asp-net
apostila-desenvolvimento-asp-net
 
Desenvolvendo Aplicativos Sociais
Desenvolvendo Aplicativos SociaisDesenvolvendo Aplicativos Sociais
Desenvolvendo Aplicativos Sociais
 
Artigo de php
Artigo de phpArtigo de php
Artigo de php
 

Introdução à programação para redes sociais com PHP

  • 1. Opa, como vai? Jota Júnior www.jotajunior.net jotavrj@gmail.com Exemplos de código desta palestra em: www.jotajunior.net/latinoware
  • 2. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 3. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 4. E qual o nosso foco? → O Open Source da palestra é o PHP → Facebook e Twitter: principais para projetos comerciais e com mais usuários
  • 5. PHP nas Mídias Sociais ●Objetivo: → Dar uma ideia do funcionamento de aplicativos de redes sociais e as ferramentas disponíveis para isso; ●Não é objetivo: → Torná-lo um mestre na programação nessa área ou apresentar todas as formas de trabalhar
  • 6. Importância → Avaliada em mais de US$ 20 bilhões → Tendência e recurso interessante
  • 7. Ou seja... $$$$$$$$$$$$$
  • 8. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 9. E como o PHP trabalha?  Redes oferecem interface, que permite uma comunicação padronizada entre a rede e os softwares que criamos; as APIs!  Objetivos das APIs: → Fornecer informações do usuário; → Oferecer informações de autenticação; → Permitir que manipule a conta do usuário
  • 10. E como o PHP trabalha? Você está criando um aplicativo social!
  • 11. OAuth  OAuth (Open Authentication) é uma forma da mídia social conceder acesso ao software sem ceder informações críticas do usuário (senha);  Ao aceitar um aplicativo no Facebook, por exemplo, está fazendo uso do OAuth.  App key, app secret, access token e permissões.
  • 12. OAuth Vantagens:  Lidar de forma padrão com a rede social;  Não solicitar informações críticas do usuário (credibilidade). Desvantagem:  Limita o software a utilizar as informações da forma que a rede social definir.
  • 13. OAuth
  • 14. Sempre há espaço para literatura ”Reduza ao máximo requisições às bibliotecas das redes sociais” - Caio F. Abreu
  • 15. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 16. Interação PHP ↔ Twitter  Biblioteca theMattHarris (tmhOauth) muito satisfatória;  REST Api bem documentada e parecida com a do Facebook;  Documentação de fácil entendimento ( https://dev.twitter.com/docs/api )
  • 17. Interação PHP ↔ Twitter Registrando o aplicativo:
  • 18. Interação PHP ↔ Twitter Forma de autenticação: Código pronto
  • 19. Interação PHP ↔ Twitter Como lidar com os recursos disponíveis
  • 20. Interação PHP ↔ Twitter Mais recursos disponíveis... https://dev.twitter.com/docs/api/1.1
  • 21. Interação PHP ↔ Twitter Exemplo consistente de implementação
  • 22. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 23. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 24. Interação PHP ↔ Facebook  Forma de lidar muito facilitada e padrão;  Extraordinariamente completa;  Existe o PHP SDK, Javascript SDK e ainda dá para fazer tudo através de requests a URLs do REST
  • 25. Interação PHP ↔ Facebook Registrando o aplicativo:  Vá em https://developers.facebook.com/apps e clique em ”Create new app”.  Define o nome, domínio (só aceitará requests de lá), descrição e etc;
  • 26. Interação PHP ↔ Facebook Como lidar com os recursos disponíveis  Utiliza a Graph Api ( graph.facebook.com )  Pode criar links, utilizando o file_get_contents(); Pode utilizar o PHP SDK, utilizando seus recursos próprios; Ou até requisições através de JS e plugins.  Acessando graph.facebook.com/zuck , retornará informações em json sobre o perfil de Mark Zuckerberg.
  • 27. Interação PHP ↔ Facebook  Diferenças das formas de interação: → Por Links: → Monta links que são chamados através de file_get_contents (precisa da função habilitada) → Precisa ter o access token gravado em algum lugar → Pelo PHP SDK: → Por utilizar uma biblioteca, levemente mais processamento → Solução mais padronizada
  • 28. Interação PHP ↔ Facebook  Qual a diferença?
  • 29. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 30. Interação PHP ↔ Facebook (link) Forma de autenticação (através de link) Eu, de novo :(
  • 31. Interação PHP ↔ Facebook (link) Como lidar com os recursos disponíveis <?php $objeto_com_informacoes = json_decode( file_get_contents(“http://graph.facebook.com/zuck”) ); ?> E é simples assim mesmo. Você pode acessar qualquer informação dessa forma: http://graph.facebook.com/OBJETO Por exemplo, http://graph.facebook.com/coca-cola vai para a página da Coca-Cola (e se adicionar /picture , como manda a lógica, retorna a imagem oficial da página).
  • 32. Interação PHP ↔ Facebook (link) Como lidar com os recursos disponíveis  Alguns necessitam do access token: <?php $link = ”https://graph.facebook.com/me/likes?access_token=TOKEN”; $objeto = json_decode( file_get_contents( $link ) ); ?>
  • 33. Interação PHP ↔ Facebook (link) Mais recursos disponíveis... Abaixo listarei a lista de exemplos do próprio Facebook, que pode ser encontrada (em inglês) em http://developers.facebook.com/docs/reference/api/ → Acessando: Amigos: https://graph.facebook.com/me/friends?access_token=... Mural: https://graph.facebook.com/me/feed?access_token=... → Publicando: https://graph.facebook.com/ID/OBJETO? access_token=TOKEN&method=post&PARAMS
  • 34. Interação PHP ↔ Facebook (link) Exemplo consistente de implementação
  • 35. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 36. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 37. Interação PHP ↔ Facebook (SDK) → O Facebook disponibiliza SDKs oficias para facilitar o desenvolvimento nos softwares/linguagens JavaScript, PHP, iOS e Android. https://developers.facebook.com/docs/sdks/ → O PHP SDK oferece uma forma padronizada e confiável de fazer requisições sem ficar montando links * Pegando informações do usuário require_once('facebook.php'); Chama o arquivo $config = array( 'appId' => 'YOUR_APP_ID', 'secret' => 'YOUR_APP_SECRET', Define id/senha do seu app ); $facebook = new Facebook($config); Instancia $user_profile = $facebook->api('/me','GET'); Faz requisição! → É necessário apenas o download de três arquivos de poucos kbytes! http://developers.facebook.com/docs/reference/php/download/
  • 38. Interação PHP ↔ Facebook (SDK)  Utilização de métodos Exemplo: Message ( http://developers.facebook.com/docs/reference/api/message/ )
  • 39. Interação PHP ↔ Facebook (SDK)  Fazendo uma verificação completa: Mais exemplos em http://developers.facebook.com/docs/reference/php/facebook-api/
  • 40. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 41. Interação PHP ↔ Facebook (FQL)  O Facebook disponibiliza o FQL ( Facebook Query Language )  Requisições à API são feitas assim como SQL de Bancos de Dados! Omg!  Os objetos (feed, likes, message, etc) são como tabelas  Só suporta requisições GET (só existe o SELECT)  Suporta operadores lógicos (OR, AND) e outros recursos como IN clause
  • 42. Interação PHP ↔ Facebook (FQL) Parte com FQL Lista de tabelas e queries em: http://developers.facebook.com/docs/reference/fql/
  • 43. Tópicos  Introdução  Conceitos  Twitter  Exemplos de código para Twitter  Introdução ao Facebook  Interação com Facebook através de links  Exemplos de código para FB e links  Interação com Facebook através de SDK  Interação com Facebook utilizando o FQL  Exemplos de código para FB com SDK e FQL
  • 45. MUITO OBRIGADO! Palestra e códigos em http://jotajunior.net/latinoware