Depuis quelques temps déjà twitter demande l'inscription d'une application pour poster via l'API. Bon je ne vais pas vous expliquer comment courtourner le système ! Avec le gem twitter, pas très compliqué, le seul problème c'est que le gem n'est compatible que ruby 1.9 donc pour les applications rubyonrails en ruby 1.8 c'est mort.
1) En premier inscrire une application sous votre compte twitter (il faut déjà un compte twitter).
à Cette adresse : https://dev.twitter.com/apps/new , mettez ce que vous voulez mais Application Type: client et Default Access type: read & write ensuite récupérez vos :
consumer_key (disponible sur la page de l'application)
consumer_secret (disponible sur la page de l'application)
oauth_token (il faut cliquer sur "My Access Token" dans le menu à droite)
oauth_token_secret (il faut cliquer sur "My Access Token" dans le menu à droite)
2) Donc installation du gem
sudo gem install twitter
Si vous utilisez rvm il faut utiliser l'executable gem de ruby d'rvm
rvm 1.9.2
gem install twitter
3) Script d'exemple :
#======================== Poster sur twitter ======================= # Plus de docs sur https://twitter.rubyforge.org/ require 'rubygems' require 'twitter' Twitter.configure do |config| config.consumer_key = "XXXXX" config.consumer_secret = "XXXXX" end # Initialise votre client Twitter client = Twitter::Client.new(:oauth_token => "XXXXX", :oauth_token_secret => "XXXXX") # Limite de post possible, j'ai des doutes sur ce fonctionnement puts client.rate_limit_status.remaining_hits.to_s + " Twitter API request(s) remaining this hour" 5.times{ |t| if client.rate_limit_status.remaining_hits.to_i != 0 then # Poste client.update(" Test numéro " + t.to_s) end }
Voilà bon twits !