rubyからtwitter APIをたたくbotを作ります。

今回は、

「受け取ったダイレクトメッセージを、そのままpostするbot」

を作ります。

以前はtwitter4Rというgemを使っていたけど、それが正しく動かなくなったので、

Ruby Twitter Gem by John Nunemaker

を使います。

ドキュメントは

rdoc.info :: twitter

に詳しいです。

で、ソースコード。

require 'rubygems'  
require 'twitter'

#twitter conf
username = ''  
password = ''  
httpauth = Twitter::HTTPAuth.new(username, password)  
client = Twitter::Base.new(httpauth)

client.direct_messages.each{ |msg|  
  post_msg = msg.text.strip
  client.update(post_msg)
  client.direct_message_destroy(msg.id)
}

これをcronで毎分動かしてやります. 以上です。今のところ正しく動いています。

--- 2010/07/10 追記 ---
この記事は古いですが、今ならOauthの認証を使うべきです。

この記事なんかが参考になります。