Opensocial-BR GTUG
19Jun/102

Biblioteca para acesso ao Orkut em PHP – 3legged OAuth orkut client

Post original do Blog do Robson Dantas

Hoje, gostaria de anunciar que consegui dedicar uma parte das minhas madrugadas desenvolvendo e ajudando um projeto opensource, que consegue se conectar ao Orkut. Para quem já conhece Opensocial, sabe que é possível desenvolver aplicativos para redes sociais e fazê-los rodar lá dentro. Mas e caso você queira fazer uso da rede social para promover seu aplicativo/site, sem ter necessariamente que produzir um aplicativo Opensocial ?

O Facebook, por exemplo, permite tal interação através do Facebook Connect, que é basicamente um conjunto de APIs para interagir com a rede, ex: mudar mensagem de status, postar mensagens no mural, buscar amigos, etc …

Até pouco tempo atrás, a única forma de interagir com o Orkut sem estar necessariamente logado dentro da rede, era usando o 2-legged OAuth que foi disponibilizado a partir da versão 0.8 do Opensocial via REST ou RPC - em poucas palavras, para ter acesso às informações do usuário por fora da rede social, o usuário deve ter um aplicativo seu escrito em Opensocial instalado no perfil. Como parte dos inúmeros processos de melhoria, o time do Orkut desenvolveu um projeto, chamado Orkut-os-client – baseado em 3legged OAuth, e que permite fazer acesso as informações dos usuários dentro do Orkut sem precisar de nenhum aplicativo instalado no perfil.

Mas nem tudo é uma maravilha: A API foi desenvolvida em Java, sendo que a grande maioria das pessoas usam PHP para o desenvolvimento. Depois de um certo tempo lendo usuários solicitando a API em outras linguagens, decidi migrar parte do código para a linguagem PHP, e pesquisando, consegui fazer algo simples e rápido.

A pergunta que você pode estar fazendo é “como simples e rápido” ? Bom, primeiro dei uma lida geral no código fonte da API em Java e descobri que todo o processo é um RPC Wrapper, e que as chamadas dos métodos da rede social são exatamente as mesmas usadas no Opensocial, ex: “messages.get” .

Com base nisso, fiz download da API já existente – desenvolvida pelos caras da Google, chamadaopensocial-php-client -  que possui implementação de 2-legged e 3-legged para uma grande parte das redes sociais.

Apliquei um patch, modificando as url’s de access token, além de alterar as chamadas JSON que são feitas ao servidor de RPC, e funcionou muito bem. Já há uma versão rodando que permite ler e gravar SCRAPS, além de pegar informações dos seus amigos.

Continuo trabalhando para dar suporte às outras funcionalidades: Álbum, activities, e outros.

O projeto foi disponibilizado no GoogleCode, e criei uma lista de discussão para os interessados no desenvolvimento. Caso queira participar, sua contribuição é bem vinda.

Site do projeto, no Google Code: Orkut-os-client-php

Grupo de discussão sobre a biblioteca

Enjoy!

Robson Dantas

About Robson Dantas

Robson Dantas é gerente de tecnologia da Agênciaclick, com mais de 10 anos de experiência na área de tecnologia e internet. Apaixonado por tecnologias Google, redes sociais e opensocial, escreve artigos para divulgar a plataforma no tempo que tem livre.
Comments (2) Trackbacks (0)
  1. Muito bom o artigo! Eu estou pesquisando a mesma coisa e achei semana passada a biblioteca opensocial-client-php. Eu vi o orkut-os em java e pensei em migrar para o php tambem. Parabéns pela iniciativa! Esse final de semana vou tentar rodar seu script. Quero participar nesse projeto e conheço outros programadores interessados tbm.

  2. Ben,

    Entre no grupo. Podemos discutir lá.

    abs

    Robson


Deixe um comentario


No trackbacks yet.