hitode909の日記

趣味はマリンスポーツですの日記です

UserStreamを受信するgem

UserStreamを受信するときに,毎回Net::HTTPがどうとか書いていて,めんどうだったので,UserStreamを受信するgemを作った.
1行ずつ受信したJSON(のテキスト)をくれるから,使いたいように使える.

UserStreamReceiver.new.run{|chunk|
  p JSON.parse(chunk)
}

内部的には,id:tilyさんのOAuth::CLI::Twitterを使ってAccessTokenを取得していて,最初に起動したときに,対話的にPINを入れるように言ってきたりする.
既存のtwitterクライアントから使いたい場合とかは,コンストラクタにAccessTokenを指定して使うこともできる.


bin/以下に2つコマンドが入ってる.

user-stream-receiver
受信したJSONを表示する.
user-stream-receiver-insert-mongo
受信したJSONをローカルのMongoDBに保存していく.


MongoDBに保存していくのは,サーバーに常駐させてログを集めるのに便利.

インストール

gem install user-stream-receiver