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