class FBScrape::Conversation
Attributes
id[RW]
messages[RW]
page_id[RW]
updated_at[RW]
Public Class Methods
new(id, page_id, token, load_on_init=true)
click to toggle source
# File lib/fb_scrape/conversation.rb, line 5 def initialize id, page_id, token, load_on_init=true @id = id @page_id = page_id @token = token @page_info = nil @messages = [] if load_on_init load_messages end end
Public Instance Methods
has_more_messages?()
click to toggle source
# File lib/fb_scrape/conversation.rb, line 21 def has_more_messages? @page_info && next_cursor end
load_messages()
click to toggle source
# File lib/fb_scrape/conversation.rb, line 17 def load_messages load_initial_messages end
Private Instance Methods
load_from_url(url)
click to toggle source
# File lib/fb_scrape/conversation.rb, line 41 def load_from_url url resp = HTTParty.get(url) case resp.code when 200 response = JSON.parse(resp.body) @messages = @messages.concat(response['messages']['data'].collect { |m| FBScrape::Message.new(m, @id, @page_id) }) @page_info = response['messages']['paging'] when 400 end end
load_initial_messages()
click to toggle source
# File lib/fb_scrape/conversation.rb, line 31 def load_initial_messages url = "https://graph.facebook.com/v#{FBScrape::GRAPH_VERSION}/#{@id}?access_token=#{@token}&fields=messages{message,to,from,created_time}" load_from_url url end
load_more_messages()
click to toggle source
# File lib/fb_scrape/conversation.rb, line 36 def load_more_messages url = "https://graph.facebook.com/v#{FBScrape::GRAPH_VERSION}/#{@id}?access_token=#{@token}&fields=messages{message,to,from,created_time}&limit=25&after=#{next_cursor}" load_from_url url end
next_cursor()
click to toggle source
# File lib/fb_scrape/conversation.rb, line 27 def next_cursor @page_info["cursors"]["after"] end