Comment j'aurai dû gagner un samsung galaxy S5 avec materiel.net et twitter !

Tous les midi, materiel.net (merci à eux) lance un concours : trouver une vignette parmi les pages de leur site. 

Pourtant chaud-bouillant, tous les midi, je me fais battre à plates coutures. Ce midi j'étais plus que jamais en feu :-) je trouve relativement rapidement la page et la tweet avec mention mais materiel.net annonce un autre vainqueur, pas très bon joueur je regarde le tweet. Je trouve cela vexant alors je cherche comment comparer la date de deux "status" twitter.

J'écris un petit script ruby pour obtenir les secondes sur les dates des status (les clés à l'API sont vides volontairement) :

require 'rubygems'
require 'twitter'
client = Twitter::REST::Client.new do |config|
config.consumer_key        = ""
config.consumer_secret     = ""
config.access_token        = ""
config.access_token_secret = ""
end
moi = '454563567547973632'
lautre = '454563662246989824'
#https://twitter.com/sylperso/status/454563567547973632
#https://twitter.com/le_matt/status/454563662246989824
puts "Moi =>"
puts client.status(moi).attrs
puts "L'autre =>"
puts client.status(lautre).attrs

Réponse du script :

Moi =>

{:created_at=>"Fri Apr 11 10:16:14 +0000 2014", :id=>454563567547973632, :id_str=>"454563567547973632", :text=>"@materielnet https://t.co/txZGEs7zKA", :source=>"web", :truncated=>false, :in_reply_to_status_id=>nil, :in_reply_to_status_id_str=>nil, :in_reply_to_user_id=>47565953, :in_reply_to_user_id_str=>"47565953", :in_reply_to_screen_name=>"materielnet", :user=>{:id=>1926957248...

L'autre =>

{:created_at=>"Fri Apr 11 10:16:37 +0000 2014", :id=>454563662246989824, :id_str=>"454563662246989824", :text=>"@materielnet hop !  https://t.co/O2ZIXBpq8W", :source=>"web", :truncated=>false, :in_reply_to_status_id=>454562669815558144, :in_reply_to_status_id_str=>"454562669815558144", :in_reply_to_user_id=>47565953, :in_reply_to_user_id_str=>"47565953", :in_reply_to_screen_name=>"materielnet", :user=>{:id=>15720056...

Donc en constatant ces résultats, je fais part de ma recherche avec le community manager de materiel.net qui m'explique que je n'apparais pas dans leur timeline.

Mon tweet mention s'apparente à une réponse (en tout cas à l'utilisateur voir le JSON en gras), de plus ensuite j'ai voulu assurer le coup en faisant après une réponse au status et là twitter considère que j'ai déjà tweeté ça (donc je laisse tombé considérant que c'est bien pareil), vous pouvez essayer vous verrez :

Donc en conclusion, twitter considère qu'un tweet avec mention et pareil qu'une réponse (message "déjà tweeté") mais pas materiel.net, donc je ne sais pas qui est en faute :

Twitter qui a fait un uniqueness scopé par user et non sur user + in_reply_to_status_id 

Materiel.net qui n'a pas d'outil pour récupérer toutes les mentions à partir d'un timestamp

Je n'ai que mes yeux pour pleurer, d’ailleurs question suivante : Est-ce que faire RT c'est pareil que cliquer sur "Retweeter" ?

Voici les status :

https://twitter.com/sylperso/status/454563567547973632

https://twitter.com/le_matt/status/454563662246989824