Я надеюсь, что смогу вернуть JSON-список сообщений от группы пользователей Facebook с гемом Koala через FQL или Graph API.В настоящее время я использую пакетную функцию Koala для вызова первого числа «х» элементов из каждого пользовательского канала, а затем выравнивания массива и сортировки по времени.Проблема в том, что я хотел бы иметь возможность получить первое число «х» элементов, при котором он не получает 10 от каждого пользователя, а просто 10 самых последних сообщений от пользователей, которых я запросил, чтобы я мог получить следующее10 от корма, похожего на то, что вы ожидаете от собственного домашнего корма.
Это то, что у меня сейчас есть:
@oauth = Koala::Facebook::OAuth.new
@access_token = @oauth.get_app_access_token
@graph = Koala::Facebook::API.new(@access_token)
artists = []
followings.each do |following|
artists << following.artist
end
feed = @graph.batch do |batch_api|
artists.each do |artist|
feed | batch_api.get_connections(artist.facebook, "feed", {"limit" => "10"})
end
end
feed.flatten!
feed.sort! { |x, y| y["created_time"] <=> x["created_time"] }
РЕДАКТИРОВАТЬ
Мне кажется, я нашел одно возможное решение с FQL следующим образом:
batch_api.fql_query("SELECT post_id, source_id, likes, actor_id, message, type FROM stream WHERE source_id IN(artist1, artist2...)")
Но мне теперь возвращается ошибка
[#<Koala::Facebook::APIError: OAuthException: (#606) Queries for multiple source_ids require a non-zero viewer that has granted read_stream permission>]
Проблема в том, что мое приложение не требуеткто-то, чтобы войти через Facebook, и поэтому я не могу запросить разрешение read_stream.В любом случае, само приложение Facebook может запросить это?