sexta-feira, 15 de maio de 2009

Cylonizando o Twitter

Depois de um longo tempo de silencio, voltei do limbo para onde havia me recolhido voluntariamente. Para comemorar este retorno, voltarei a tratar do querido, e agora muito notado, Twitter.

Este projeto será mais uma contribuição minha para a dominação do Twitter por robôs! Construiremos um maldito Cylon ("bot") cujo o objetivo é publicar via twits (os conhecidos updates) aqueles feeds que você opta por compartilhar no Google Reader.

O que iremos precisar
Também são necessário os seguintes componentes:Não entrarei na maioria dos detalhes da implementação da classe em si, o código está razoavelmente bem documentado. A dica que darei aqui é de como obter a API Key do bit.ly e a URL dos seus itens compartilhados no Google Reader.

Compartilhando suas noticias favoritas no Google Reader

Este passo é bem simples, basta clicar no ícone "Compartilhar"(), localizado no rodapé de cada noticia, e pronto! Sem maiores mistérios...

Obtendo o endereço dos seus itens compartilhados do Google Reader

Siga os passos:
  1. Clique no link
  2. Clique na aba "Pastas e Tags"
  3. Clique no link "Visualizar página pública"
  4. Copie o link "Feed Atom"






Conseguindo a API Key do bit.ly

Utilizei o bit.ly como URL Shortener (lit. Encolhedor de URLs). Para quem não sabe, o Twitter possui um limitação de 140 caracteres por post, dai a necessidade de utilizar este tipo de serviço.
  • Inscreva-se e faça login no site do serviço
  • Clique no link "Account"

  • Copie o código iniciado por "R_", esta é sua "API Key"


Falando um pouco do código

Um trecho que merece algumas explicações é o seguinte:
String sAux =(new String(responseBody).split(",")[4].trim()).substring(12);
Este tratamento é motivado pela retorno do método getResponseBody()
{
"errorCode" : "0",
"errorMessage" : "",
"results" : {
"http://www.pheedcontent.com/click.phdo?i=1734b4d71357cabfb634d3be51b02aa8": {
"hash" : "BidIZ",
"shortKeywordUrl" : "",
"shortUrl" : "http://bit.ly/GDaGD",
"userHash" : "GDaGD"
}
},
"statusCode": "OK"
}
O método split recebe uma string separada por um determinado caractere (no caso acima, o caractere ",") e retorna um array. Neste situação, nosso interesse é pela posição 4, onde está armazenada a sequência:
"shortUrl" : "http://bit.ly/GDaGD",
O resto do código, creio eu, é mais inteligível e não precisa de maiores explicações.

William Adama não é de nada!!

Download do código fonte aqui.

Nenhum comentário:

Postar um comentário