Usando o módulo Twitter para twittar posts
Sim, quem diria, finalmente um assunto sobre desenvolvimento web! E pela lista de temas para posts de blog que tenho aqui, vai ser o único por um bom tempo.
O que posso fazer se tenho vontade de escrever sobre os mais variados temas, como GURPS (um sistema de RPG de mesa), quadros do Mythbusters e desenhos animados?
O texto de hoje é um pequeno tutorial de configuração para o módulo Twitter para o Drupal 6. Na verdade não é um módulo excepcionalmente difícil de configurar, apenas com pecularidades que podem ser confusas, especialmente para quem não tem muita intimidade com a lingua inglesa ou os termos técnicos envolvidos.
O tutorial vai abordar apenas o envio automático de posts direto para uma conta do Twitter, mas o módulo Twitter para Drupal possui ainda os seguintes recursos:
- Possibilidade de efetuar login no site utilizando sua conta do Twitter;
- Um filtro de texto que converter palavras começando com "#" e em "@" em links para hashtags e para perfis no Twitter, respectivamente;
- Possibilidade de copiar os tweets dos usuários para o banco de dados do seu site, o que pode ser uma boa forma de fazer um backup das mensagens do twitter.
- Integração completa com o módulo Views.
Recomendo fazer esta configuração apenas quando seu site já estiver sendo acessado pelo seu domínio final.
Parte 1: instalando o módulo, dependências e opcionais
Para começar nosso tutorial você precisa dos seguintes módulos:
- O módulo Twitter, obviamente: http://drupal.org/project/twitter
- O módulo OAuth na versão 6.x-2.02: http://drupal.org/node/476824 (é muito importante que a versão do módulo seja exatamente a 6.x-2.02, nem uma mais nem uma menos);
Opcionalmente, você pode instalar o módulo Shorten URLs. Este módulo integra com o módulo Twitter e permite o uso de 25 encurtadores de url por padrão, e ainda configurar outros que não devem ser suportados, como o Migre.me, por exemplo. Mas caso você não deseje utilizá-lo será utilizado o tinyurl.com para compactar os endereços dos posts.
Baixe os módulos acima na pasta /sites/all/modules, e depois ative-os na página de gerenciamento de módulos («seu_site»/admin/build/modules).
Parte 2: configuração básica do módulo Twitter
Não há qualquer necessidade de fazer qualquer configuração no módulo OAuth. Vamos direto para «seu_site»/admin/settings/twitter para fazer a configuração do Twitter.
Você verá uma tela como esta:
Guarde esta url de Callback, ela será importante para obtermos a OAuth Consumer Key e a OAuth Consumer Secret. Estes dados vamos obter apenas na parte 3 deste tutorial.
Dizendo isso, a única configuração importante é a importação dos posts de twitter. Ative-a se quiser, e defina se você quer que os tweets antigos sejam apagados após algum tempo. Se sua intenção é realizar um backup das mensagens o ideal é que os tweets nunca sejam apagados.
Configurando a Aba "Post"
Nesta aba você vai marcar quais tipos de conteúdo que deseja que sejam enviados ao Twitter ao serem criados. Você também vai definir o formato padrão da mensagem a ser tweetada, que pode ser personalizada utilizando os seguintes tokens de substituição:
- !url: URL original do post;
- !url-alias: a URL amigável gerado pelo Drupal para o Post;
- !tinyurl: a URL compactada usando o serviço tinyurl.com;
- !title: O título da postagem;
- !user: o usuário que criou a postagem;
Parte 3: Obtendo as OAuth Consumer Key e Secret
Agora vamos voltar à pagina anterior e configurar o passo mais importante para o funcionamento da nossa aplicação.
Abra uma nova aba ou janela (alguém ainda abre janelas em navegadores??) no seu navegador e acesse o endereço: https://twitter.com/apps/new e vamos registrar a aplicação (ou seja, o seu website que vai postar mensagens no Twitter). Nesta página você vai ter que fornecer alguns dados num formulário, Os campos são os seguintes:
- Application Icon: uma imagem para ilustrar sua aplicação. Totalmente opcional;
- Application Name: O nome da aplicação, você pode colocar aqui o nome do site;
- Description: Descrição, você pode colocar simplesmente "Allow the web site to send tweet in every post created." ou algo do tipo;
- Application Website: O endereço da sua aplicação, que no caso é o endereço do próprio site;
- Organization e Website: Se você tem uma empresa pode colocar aqui o nome e endereço do site dela aqui. Se não tiver, coloque o endereço do seu portfólio;
- Application type: No nosso caso vamos selecionar a opção Browser, já que a aplicação é acessível por navegador e não por um cliente desktop;
- Callback url: Cole aqui a URL de callback que é fornecida na página de configuração do módulo Twitter;
- Default Access type: O tipo de acesso padrão à API do Twitter. Como queremos postar no Twitter, vamos selecionar a opção Read & Write (ler e escrever);
- Use Twitter for login: Marque esta opção se deseja utilizar o Twitter para fazer login na sua aplicação, o que não é o caso deste tutorial;
Agora é só preencher o CAPTCHA (aquelas letrinhas tortas, saca?) e clicar em save, e se você preencheu todos os campos, será enviado para uma página onde será fornecida os OAuth Consumer Key e OAuth Consumer Secret. Copie essas chaves e cole nos respectivos campos na página de configuração do Módulo Twitter.
Parte 4: Permissões
Agora você deve, ou não configurar as permissões do Módulo. Esta configuração não é muito necessária quando o site é mono-usuário e você só acessa com a conta de administrador. Pessoalmente eu crio um papel de usuário para os usuários dos meus clientes, para que eles não acessem o que não deveriam e acabem danificando o site de alguma forma. Neste caso é interessante marcar a permissão "use global twitter account" para o papel de usuário do cliente, para que o cliente possa postar na conta de Twitter do site.
Parte 5: Adicionar uma conta de Twitter Global
Existem dois tipos de conta de Twitter que você pode adicionar ao site. Um dos tipos é a conta de usuário comum. Neste caso só serão postados nesta conta de Twitter os posts que forem criados pelo usuário em questão.
As Contas Globais são compartilhadas por todos os usuários do site que possuem a permissão "use global twitter account" de que falei acima.
Vamos adicionar uma Conta Global ao usuário administrador do site. Vá para a página de edição do usuário («seu_site»/user/1/edit). Você verá uma sub-aba chamada Twitter Accounts. Clique nela.
Você irá para uma página que lista as contas de Twitter daquele usuário (é possível ter mais de uma conta por usuário). Clique no botão Adicionar Conta. Você será redirecionado ao Twitter para que dê permissão de acesso à sua conta.

Após dar permissão de acesso (clicando em "Allow"), você será redirecionado ao site novamente, e será mostrado informações sobre a conta adicionada (Imagem, nome de usuário e Bio da conta).
No fim da linha da tabela de informações você verá a opção "Make Global". Clique sobre este link e pronto, esta conta será global e poderá ser acessada por mais de um usuário do site.
As outras opções desta página são as caixas de seleção "Importar" e "Apagar", que respectivamente importam os tweets da conta para o banco de dados do seu site ou apagar aquela conta do seu site. É necessário clicar no botão "salvar alterações" após selecionar estas opções.
Parte 6: Use!
Agora é só criar conteúdos e sair postando no Twitter:
Caso queirar criar um conteúdo e não posta-lo no Twitter, basta desmarcar a opção "Anunciar este post no Twitter".
Chegamos ao fim deste relativamente inútil tutorial. Espero que ele tenha algum uso para alguém, pois ele me custou umas 2 ou 3 horas da minha manhã de Domingo de Páscoa!
E se vocês tiverem alguma sugestão sobre o que eu poderia escrever, postem nos comentários. Às vezes eu não tenho idéia do que fazer aqui.
Até a próxima, ou não!


