php nas mídias sociais
DESCRIPTION
PalTRANSCRIPT
Opa, como vai?
Jota Júnior
www.jotajunior.net
Exemplos de código desta palestra em:www.jotajunior.net/latinoware
Tópicos Introdução
Conceitos
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
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
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
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 ↔ TwitterMais 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
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
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
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
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
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');$config = array( 'appId' => 'YOUR_APP_ID', 'secret' => 'YOUR_APP_SECRET', );
$facebook = new Facebook($config);
$user_profile = $facebook->api('/me','GET');
→ É necessário apenas o download de três arquivos de poucos kbytes!http://developers.facebook.com/docs/reference/php/download/
Chama o arquivo
Define id/senha do seu app
Instancia
Faz requisição!
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
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
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