twitter4r にはまだ list を扱う API が無いようなので、本体に手を入れないで機能追加してみた。
require 'twitter' module Twitter class List include ModelMixin @@ATTRIBUTES = [:lists] attr_accessor *@@ATTRIBUTES class << self def attributes; @@ATTRIBUTES; end end end end class Twitter::Client # 登録済みの list 一覧を取得 def lists(options = {}) uri = "/#{@login}/lists.json" response = http_connect {|conn| create_http_get_request(uri, options) } timeline = Twitter::List.unmarshal(response.body) end # 内部変数に list にアクセスする uri を追加 def add_timeline_uri(type , uri) @@TIMELINE_URIS[type] = uri end # 内部変数に list にアクセスする uri を追加 def add_lists_to_timeline_uris lists.lists.each do |list| name = list["slug"].to_sym uri = "/#{@login}/lists/#{name}/statuses.json" add_timeline_uri(name , uri) end end end username = 'username' password = 'password' client = Twitter::Client.new( :login => username, :password => password ) # 登録済みの list が使えるように内部変数に追加 client.add_lists_to_timeline_uris # 登録している list 名を指定 client.timeline_for(:tottoruby).to_a.collect {|status| puts status.user.screen_name + " " + status.text }