fb_graph 2.4.13 → 2.4.14
Sign up to get free protection for your applications and to get access to all the features.
- data/Gemfile.lock +8 -8
- data/VERSION +1 -1
- data/fb_graph.gemspec +1 -1
- data/lib/fb_graph/application.rb +6 -17
- data/lib/fb_graph/connections/conversations.rb +14 -0
- data/lib/fb_graph/connections/messages.rb +8 -0
- data/lib/fb_graph/page.rb +1 -0
- data/lib/fb_graph.rb +0 -1
- data/spec/fb_graph/connections/conversations_spec.rb +19 -0
- data/spec/fb_graph/connections/messages_spec.rb +39 -23
- data/spec/fb_graph/post_spec.rb +0 -20
- data/spec/mock_json/pages/conversations/list.json +83 -0
- data/spec/mock_json/thread/messages/created.json +1 -0
- metadata +29 -27
- data/lib/fb_graph/connections/reviews.rb +0 -14
- data/lib/fb_graph/review.rb +0 -20
- data/spec/fb_graph/connections/reviews_spec.rb +0 -14
- data/spec/mock_json/applications/feed/public.json +0 -34
- data/spec/mock_json/applications/reviews/public.json +0 -354
data/Gemfile.lock
CHANGED
@@ -56,14 +56,14 @@ GEM
|
|
56
56
|
rack-test (0.6.1)
|
57
57
|
rack (>= 1.0)
|
58
58
|
rake (0.9.2.2)
|
59
|
-
rspec (2.
|
60
|
-
rspec-core (~> 2.
|
61
|
-
rspec-expectations (~> 2.
|
62
|
-
rspec-mocks (~> 2.
|
63
|
-
rspec-core (2.
|
64
|
-
rspec-expectations (2.
|
59
|
+
rspec (2.9.0)
|
60
|
+
rspec-core (~> 2.9.0)
|
61
|
+
rspec-expectations (~> 2.9.0)
|
62
|
+
rspec-mocks (~> 2.9.0)
|
63
|
+
rspec-core (2.9.0)
|
64
|
+
rspec-expectations (2.9.1)
|
65
65
|
diff-lcs (~> 1.1.3)
|
66
|
-
rspec-mocks (2.
|
66
|
+
rspec-mocks (2.9.0)
|
67
67
|
sprockets (2.1.3)
|
68
68
|
hike (~> 1.2)
|
69
69
|
rack (~> 1.0)
|
@@ -84,5 +84,5 @@ DEPENDENCIES
|
|
84
84
|
fb_graph!
|
85
85
|
jruby-openssl (>= 0.7)
|
86
86
|
rake (>= 0.8)
|
87
|
-
rspec (>= 2)
|
87
|
+
rspec (>= 2, < 2.10.0)
|
88
88
|
webmock (>= 1.6.2)
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
2.4.
|
1
|
+
2.4.14
|
data/fb_graph.gemspec
CHANGED
@@ -21,7 +21,7 @@ Gem::Specification.new do |s|
|
|
21
21
|
else
|
22
22
|
s.add_development_dependency "rcov", ">= 0.9"
|
23
23
|
end
|
24
|
-
s.add_development_dependency "rspec", ">= 2"
|
24
|
+
s.add_development_dependency "rspec", ">= 2", "< 2.10.0"
|
25
25
|
s.add_development_dependency "webmock", ">= 1.6.2"
|
26
26
|
s.add_development_dependency "actionpack", ">= 3.0.6"
|
27
27
|
end
|
data/lib/fb_graph/application.rb
CHANGED
@@ -2,23 +2,11 @@ module FbGraph
|
|
2
2
|
class Application < Node
|
3
3
|
include Connections::Accounts
|
4
4
|
include Connections::Achievements
|
5
|
-
include Connections::Albums
|
6
|
-
include Connections::Events
|
7
|
-
include Connections::Feed
|
8
5
|
include Connections::Insights
|
9
|
-
include Connections::Links
|
10
|
-
include Connections::Notes
|
11
6
|
include Connections::Payments
|
12
|
-
include Connections::Photos
|
13
7
|
include Connections::Picture
|
14
|
-
include Connections::Posts
|
15
|
-
include Connections::Reviews
|
16
|
-
include Connections::Statuses
|
17
8
|
include Connections::Subscriptions
|
18
|
-
include Connections::Tagged
|
19
9
|
include Connections::TestUsers
|
20
|
-
# TODO
|
21
|
-
# include Connections::Translations
|
22
10
|
include Connections::Videos
|
23
11
|
include OpenGraph::ApplicationContext
|
24
12
|
|
@@ -81,13 +69,14 @@ module FbGraph
|
|
81
69
|
@@attributes.each do |key|
|
82
70
|
# NOTE:
|
83
71
|
# For some reason, Graph API returns daily_active_users, weekly_active_users, monthly_active_users as JSON string.
|
84
|
-
value =
|
72
|
+
value = case key
|
73
|
+
when :daily_active_users, :weekly_active_users, :monthly_active_users
|
85
74
|
attributes[key].to_i
|
86
|
-
|
87
|
-
|
88
|
-
|
75
|
+
when :auth_referral_enabled, :canvas_fluid_height, :canvas_fluid_width, :social_discovery
|
76
|
+
case attributes[key]
|
77
|
+
when 1
|
89
78
|
true
|
90
|
-
|
79
|
+
when 0
|
91
80
|
false
|
92
81
|
else
|
93
82
|
attributes[key]
|
@@ -0,0 +1,14 @@
|
|
1
|
+
module FbGraph
|
2
|
+
module Connections
|
3
|
+
module Conversations
|
4
|
+
def conversations(options = {})
|
5
|
+
conversations = self.connection :conversations, options
|
6
|
+
conversations.map! do |conversation|
|
7
|
+
Thread.new conversation[:id], conversation.merge(
|
8
|
+
:access_token => options[:access_token] || self.access_token
|
9
|
+
)
|
10
|
+
end
|
11
|
+
end
|
12
|
+
end
|
13
|
+
end
|
14
|
+
end
|
@@ -9,6 +9,14 @@ module FbGraph
|
|
9
9
|
)
|
10
10
|
end
|
11
11
|
end
|
12
|
+
|
13
|
+
def message!(message, options = {})
|
14
|
+
options[:message] = message
|
15
|
+
message = post options.merge(:connection => :messages)
|
16
|
+
Message.new message[:id], message.merge(options).merge(
|
17
|
+
:access_token => options[:access_token] || self.access_token
|
18
|
+
)
|
19
|
+
end
|
12
20
|
end
|
13
21
|
end
|
14
22
|
end
|
data/lib/fb_graph/page.rb
CHANGED
data/lib/fb_graph.rb
CHANGED
@@ -0,0 +1,19 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe FbGraph::Connections::Conversations do
|
4
|
+
describe '#conversations' do
|
5
|
+
let(:page) do
|
6
|
+
FbGraph::Page.new('page_id', :access_token => 'page_token')
|
7
|
+
end
|
8
|
+
|
9
|
+
it 'should return an Array of FbGraph::Thread' do
|
10
|
+
mock_graph :get, 'page_id/conversations', 'pages/conversations/list', :access_token => 'page_token' do
|
11
|
+
conversations = page.conversations
|
12
|
+
conversations.should be_instance_of FbGraph::Connection
|
13
|
+
conversations.each do |conversation|
|
14
|
+
conversation.should be_instance_of FbGraph::Thread
|
15
|
+
end
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
19
|
+
end
|
@@ -1,41 +1,57 @@
|
|
1
1
|
require 'spec_helper'
|
2
2
|
|
3
|
-
describe FbGraph::Connections::Messages
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
3
|
+
describe FbGraph::Connections::Messages do
|
4
|
+
describe '#messages' do
|
5
|
+
it 'should return threads as FbGraph::Message' do
|
6
|
+
mock_graph :get, '12345/messages', 'thread/messages/private', :params => {:no_cache => 'true'}, :access_token => 'access_token' do
|
7
|
+
messages = FbGraph::Thread.new(12345, :access_token => 'access_token').messages(:no_cache => true)
|
8
|
+
messages.each do |message|
|
9
|
+
message.should be_instance_of(FbGraph::Message)
|
10
|
+
end
|
9
11
|
end
|
10
12
|
end
|
11
|
-
end
|
12
13
|
|
13
|
-
|
14
|
-
|
15
|
-
|
14
|
+
describe 'cached messages' do
|
15
|
+
context 'when cached' do
|
16
|
+
let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token', :messages => {}) }
|
17
|
+
|
18
|
+
it 'should use cache' do
|
19
|
+
lambda do
|
20
|
+
thread.messages
|
21
|
+
end.should_not request_to '12345/messages?access_token=access_token'
|
22
|
+
end
|
16
23
|
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
24
|
+
context 'when options are specified' do
|
25
|
+
it 'should not use cache' do
|
26
|
+
lambda do
|
27
|
+
thread.messages(:no_cache => true)
|
28
|
+
end.should request_to '12345/messages?access_token=access_token&no_cache=true'
|
29
|
+
end
|
30
|
+
end
|
21
31
|
end
|
22
32
|
|
23
|
-
context '
|
33
|
+
context 'otherwise' do
|
34
|
+
let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token') }
|
35
|
+
|
24
36
|
it 'should not use cache' do
|
25
37
|
lambda do
|
26
|
-
thread.messages
|
27
|
-
end.should request_to '12345/messages?access_token=access_token
|
38
|
+
thread.messages
|
39
|
+
end.should request_to '12345/messages?access_token=access_token'
|
28
40
|
end
|
29
41
|
end
|
30
42
|
end
|
43
|
+
end
|
31
44
|
|
32
|
-
|
33
|
-
|
45
|
+
describe '#message!' do
|
46
|
+
let(:thread) { FbGraph::Thread.new(12345, :access_token => 'access_token') }
|
34
47
|
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
48
|
+
it 'should return FbGraph::Message' do
|
49
|
+
mock_graph :post, '12345/messages', 'thread/messages/created', :access_token => 'access_token', :params => {
|
50
|
+
:message => 'Hello'
|
51
|
+
} do
|
52
|
+
message = thread.message! 'Hello'
|
53
|
+
message.should be_instance_of FbGraph::Message
|
54
|
+
message.message.should == 'Hello'
|
39
55
|
end
|
40
56
|
end
|
41
57
|
end
|
data/spec/fb_graph/post_spec.rb
CHANGED
@@ -211,26 +211,6 @@ describe FbGraph::Post, '#to' do
|
|
211
211
|
it { should be_instance_of FbGraph::Event }
|
212
212
|
end
|
213
213
|
|
214
|
-
context 'when include Application' do
|
215
|
-
context 'when fetched as Application#feed' do
|
216
|
-
let :post do
|
217
|
-
mock_graph :get, 'app/feed', 'applications/feed/public' do
|
218
|
-
FbGraph::Application.new('app').feed.first
|
219
|
-
end
|
220
|
-
end
|
221
|
-
it { should be_instance_of FbGraph::Application }
|
222
|
-
end
|
223
|
-
|
224
|
-
context 'otherwize' do # no way to detect this case..
|
225
|
-
let :post do
|
226
|
-
mock_graph :get, 'to_application', 'posts/to_application' do
|
227
|
-
FbGraph::Post.fetch('to_application')
|
228
|
-
end
|
229
|
-
end
|
230
|
-
it { should be_instance_of FbGraph::User }
|
231
|
-
end
|
232
|
-
end
|
233
|
-
|
234
214
|
context 'when include Group' do
|
235
215
|
let :post do
|
236
216
|
mock_graph :get, 'to_group', 'posts/to_group', :access_token => 'access_token' do
|
@@ -0,0 +1,83 @@
|
|
1
|
+
{
|
2
|
+
"data": [{
|
3
|
+
"id": "t_id.433490033330462",
|
4
|
+
"snippet": "hey hey",
|
5
|
+
"updated_time": "2012-05-09T09:25:00+0000",
|
6
|
+
"message_count": 1,
|
7
|
+
"tags": {
|
8
|
+
"data": [{
|
9
|
+
"name": "inbox"
|
10
|
+
},
|
11
|
+
{
|
12
|
+
"name": "read"
|
13
|
+
},
|
14
|
+
{
|
15
|
+
"name": "seen"
|
16
|
+
},
|
17
|
+
{
|
18
|
+
"name": "source:web"
|
19
|
+
}]
|
20
|
+
},
|
21
|
+
"participants": {
|
22
|
+
"data": [{
|
23
|
+
"name": "Nov Matake",
|
24
|
+
"email": "579612276\u0040facebook.com",
|
25
|
+
"id": "579612276"
|
26
|
+
},
|
27
|
+
{
|
28
|
+
"name": "FbGraph",
|
29
|
+
"email": "117513961602338\u0040facebook.com",
|
30
|
+
"id": "117513961602338"
|
31
|
+
}]
|
32
|
+
},
|
33
|
+
"senders": {
|
34
|
+
"data": [{
|
35
|
+
"name": "Nov Matake",
|
36
|
+
"email": "579612276\u0040facebook.com",
|
37
|
+
"id": "579612276"
|
38
|
+
}]
|
39
|
+
},
|
40
|
+
"can_reply": true,
|
41
|
+
"is_subscribed": true,
|
42
|
+
"link": "http:\/\/www.facebook.com\/messages\/?action=read&tid=id.433490033330462",
|
43
|
+
"messages": {
|
44
|
+
"data": [{
|
45
|
+
"id": "m_id.433490033330462",
|
46
|
+
"created_time": "2012-05-09T09:25:00+0000",
|
47
|
+
"tags": {
|
48
|
+
"data": [{
|
49
|
+
"name": "inbox"
|
50
|
+
},
|
51
|
+
{
|
52
|
+
"name": "read"
|
53
|
+
},
|
54
|
+
{
|
55
|
+
"name": "source:web"
|
56
|
+
}]
|
57
|
+
},
|
58
|
+
"from": {
|
59
|
+
"name": "Nov Matake",
|
60
|
+
"email": "matake\u0040facebook.com",
|
61
|
+
"id": "579612276"
|
62
|
+
},
|
63
|
+
"to": {
|
64
|
+
"data": [{
|
65
|
+
"name": "FbGraph",
|
66
|
+
"email": "117513961602338\u0040facebook.com",
|
67
|
+
"id": "117513961602338"
|
68
|
+
},
|
69
|
+
{
|
70
|
+
"name": "Nov Matake",
|
71
|
+
"email": "matake\u0040facebook.com",
|
72
|
+
"id": "579612276"
|
73
|
+
}]
|
74
|
+
},
|
75
|
+
"message": "hey hey"
|
76
|
+
}],
|
77
|
+
"paging": {
|
78
|
+
"previous": "https:\/\/graph.facebook.com\/t_id.433490033330462\/messages?access_token=AAAB6ATdqrnIBAJZB0RsPZCpLXqmVghMZCPcckNc1qbBSZCjUT2uUcDAUThZCOoQ7c1ucUZBMniALinKb0t0XtGY4eOefVRrlI5vPGK0eWJUcU8yAEjjXI9&limit=25&since=1336555500&__paging_token=m_id.433490033330462&__previous=1",
|
79
|
+
"next": "https:\/\/graph.facebook.com\/t_id.433490033330462\/messages?access_token=AAAB6ATdqrnIBAJZB0RsPZCpLXqmVghMZCPcckNc1qbBSZCjUT2uUcDAUThZCOoQ7c1ucUZBMniALinKb0t0XtGY4eOefVRrlI5vPGK0eWJUcU8yAEjjXI9&limit=25&until=1336555500&__paging_token=m_id.433490033330462"
|
80
|
+
}
|
81
|
+
}
|
82
|
+
}]
|
83
|
+
}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"id":"m_id.383923968318039"}
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: fb_graph
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.4.
|
4
|
+
version: 2.4.14
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2012-05-
|
12
|
+
date: 2012-05-09 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httpclient
|
16
|
-
requirement: &
|
16
|
+
requirement: &70290371666620 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ! '>='
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 2.2.0.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70290371666620
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: rack-oauth2
|
27
|
-
requirement: &
|
27
|
+
requirement: &70290371666120 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ! '>='
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 0.14.4
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70290371666120
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: tzinfo
|
38
|
-
requirement: &
|
38
|
+
requirement: &70290371665740 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :runtime
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *70290371665740
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: rake
|
49
|
-
requirement: &
|
49
|
+
requirement: &70290371665200 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ! '>='
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: '0.8'
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *70290371665200
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: cover_me
|
60
|
-
requirement: &
|
60
|
+
requirement: &70290371664640 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ! '>='
|
@@ -65,21 +65,24 @@ dependencies:
|
|
65
65
|
version: 1.2.0
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *70290371664640
|
69
69
|
- !ruby/object:Gem::Dependency
|
70
70
|
name: rspec
|
71
|
-
requirement: &
|
71
|
+
requirement: &70290371664140 !ruby/object:Gem::Requirement
|
72
72
|
none: false
|
73
73
|
requirements:
|
74
74
|
- - ! '>='
|
75
75
|
- !ruby/object:Gem::Version
|
76
76
|
version: '2'
|
77
|
+
- - <
|
78
|
+
- !ruby/object:Gem::Version
|
79
|
+
version: 2.10.0
|
77
80
|
type: :development
|
78
81
|
prerelease: false
|
79
|
-
version_requirements: *
|
82
|
+
version_requirements: *70290371664140
|
80
83
|
- !ruby/object:Gem::Dependency
|
81
84
|
name: webmock
|
82
|
-
requirement: &
|
85
|
+
requirement: &70290371663260 !ruby/object:Gem::Requirement
|
83
86
|
none: false
|
84
87
|
requirements:
|
85
88
|
- - ! '>='
|
@@ -87,10 +90,10 @@ dependencies:
|
|
87
90
|
version: 1.6.2
|
88
91
|
type: :development
|
89
92
|
prerelease: false
|
90
|
-
version_requirements: *
|
93
|
+
version_requirements: *70290371663260
|
91
94
|
- !ruby/object:Gem::Dependency
|
92
95
|
name: actionpack
|
93
|
-
requirement: &
|
96
|
+
requirement: &70290371656620 !ruby/object:Gem::Requirement
|
94
97
|
none: false
|
95
98
|
requirements:
|
96
99
|
- - ! '>='
|
@@ -98,7 +101,7 @@ dependencies:
|
|
98
101
|
version: 3.0.6
|
99
102
|
type: :development
|
100
103
|
prerelease: false
|
101
|
-
version_requirements: *
|
104
|
+
version_requirements: *70290371656620
|
102
105
|
description: A full-stack Facebook Graph API wrapper in Ruby.
|
103
106
|
email: nov@matake.jp
|
104
107
|
executables: []
|
@@ -166,6 +169,7 @@ files:
|
|
166
169
|
- lib/fb_graph/connections/broad_targeting_categories.rb
|
167
170
|
- lib/fb_graph/connections/checkins.rb
|
168
171
|
- lib/fb_graph/connections/comments.rb
|
172
|
+
- lib/fb_graph/connections/conversations.rb
|
169
173
|
- lib/fb_graph/connections/declined.rb
|
170
174
|
- lib/fb_graph/connections/docs.rb
|
171
175
|
- lib/fb_graph/connections/events.rb
|
@@ -205,7 +209,6 @@ files:
|
|
205
209
|
- lib/fb_graph/connections/question_options.rb
|
206
210
|
- lib/fb_graph/connections/questions.rb
|
207
211
|
- lib/fb_graph/connections/reach_estimates.rb
|
208
|
-
- lib/fb_graph/connections/reviews.rb
|
209
212
|
- lib/fb_graph/connections/scores.rb
|
210
213
|
- lib/fb_graph/connections/senders.rb
|
211
214
|
- lib/fb_graph/connections/settings.rb
|
@@ -261,7 +264,6 @@ files:
|
|
261
264
|
- lib/fb_graph/question.rb
|
262
265
|
- lib/fb_graph/question_option.rb
|
263
266
|
- lib/fb_graph/reach_estimate.rb
|
264
|
-
- lib/fb_graph/review.rb
|
265
267
|
- lib/fb_graph/score.rb
|
266
268
|
- lib/fb_graph/searchable.rb
|
267
269
|
- lib/fb_graph/searchable/result.rb
|
@@ -322,6 +324,7 @@ files:
|
|
322
324
|
- spec/fb_graph/connections/broad_targeting_categories_spec.rb
|
323
325
|
- spec/fb_graph/connections/checkins_spec.rb
|
324
326
|
- spec/fb_graph/connections/comments_spec.rb
|
327
|
+
- spec/fb_graph/connections/conversations_spec.rb
|
325
328
|
- spec/fb_graph/connections/declined_spec.rb
|
326
329
|
- spec/fb_graph/connections/docs_spec.rb
|
327
330
|
- spec/fb_graph/connections/events_spec.rb
|
@@ -361,7 +364,6 @@ files:
|
|
361
364
|
- spec/fb_graph/connections/question_options_spec.rb
|
362
365
|
- spec/fb_graph/connections/questions_spec.rb
|
363
366
|
- spec/fb_graph/connections/reach_estimates_spec.rb
|
364
|
-
- spec/fb_graph/connections/reviews_spec.rb
|
365
367
|
- spec/fb_graph/connections/scores_spec.rb
|
366
368
|
- spec/fb_graph/connections/senders_spec.rb
|
367
369
|
- spec/fb_graph/connections/settings_spec.rb
|
@@ -455,9 +457,7 @@ files:
|
|
455
457
|
- spec/mock_json/applications/accounts/private.json
|
456
458
|
- spec/mock_json/applications/achievements/sample.json
|
457
459
|
- spec/mock_json/applications/fbgraphsample.json
|
458
|
-
- spec/mock_json/applications/feed/public.json
|
459
460
|
- spec/mock_json/applications/payments/sample.json
|
460
|
-
- spec/mock_json/applications/reviews/public.json
|
461
461
|
- spec/mock_json/applications/subscriptions/fb_graph_private.json
|
462
462
|
- spec/mock_json/applications/test_users/created.json
|
463
463
|
- spec/mock_json/applications/test_users/private.json
|
@@ -494,6 +494,7 @@ files:
|
|
494
494
|
- spec/mock_json/pages/categories/product.json
|
495
495
|
- spec/mock_json/pages/checkins/gowalla_private.json
|
496
496
|
- spec/mock_json/pages/checkins/gowalla_public.json
|
497
|
+
- spec/mock_json/pages/conversations/list.json
|
497
498
|
- spec/mock_json/pages/insights/FbGraph_private.json
|
498
499
|
- spec/mock_json/pages/insights/FbGraph_public.json
|
499
500
|
- spec/mock_json/pages/insights/page_like_adds/FbGraph_private.json
|
@@ -538,6 +539,7 @@ files:
|
|
538
539
|
- spec/mock_json/questions/options/votes/matake_private.json
|
539
540
|
- spec/mock_json/statuses/with_likes.json
|
540
541
|
- spec/mock_json/thread/former_participants/private.json
|
542
|
+
- spec/mock_json/thread/messages/created.json
|
541
543
|
- spec/mock_json/thread/messages/private.json
|
542
544
|
- spec/mock_json/thread/participants/private.json
|
543
545
|
- spec/mock_json/thread/senders/private.json
|
@@ -646,7 +648,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
646
648
|
version: '0'
|
647
649
|
requirements: []
|
648
650
|
rubyforge_project:
|
649
|
-
rubygems_version: 1.8.
|
651
|
+
rubygems_version: 1.8.12
|
650
652
|
signing_key:
|
651
653
|
specification_version: 3
|
652
654
|
summary: A full-stack Facebook Graph API wrapper in Ruby.
|
@@ -690,6 +692,7 @@ test_files:
|
|
690
692
|
- spec/fb_graph/connections/broad_targeting_categories_spec.rb
|
691
693
|
- spec/fb_graph/connections/checkins_spec.rb
|
692
694
|
- spec/fb_graph/connections/comments_spec.rb
|
695
|
+
- spec/fb_graph/connections/conversations_spec.rb
|
693
696
|
- spec/fb_graph/connections/declined_spec.rb
|
694
697
|
- spec/fb_graph/connections/docs_spec.rb
|
695
698
|
- spec/fb_graph/connections/events_spec.rb
|
@@ -729,7 +732,6 @@ test_files:
|
|
729
732
|
- spec/fb_graph/connections/question_options_spec.rb
|
730
733
|
- spec/fb_graph/connections/questions_spec.rb
|
731
734
|
- spec/fb_graph/connections/reach_estimates_spec.rb
|
732
|
-
- spec/fb_graph/connections/reviews_spec.rb
|
733
735
|
- spec/fb_graph/connections/scores_spec.rb
|
734
736
|
- spec/fb_graph/connections/senders_spec.rb
|
735
737
|
- spec/fb_graph/connections/settings_spec.rb
|
@@ -823,9 +825,7 @@ test_files:
|
|
823
825
|
- spec/mock_json/applications/accounts/private.json
|
824
826
|
- spec/mock_json/applications/achievements/sample.json
|
825
827
|
- spec/mock_json/applications/fbgraphsample.json
|
826
|
-
- spec/mock_json/applications/feed/public.json
|
827
828
|
- spec/mock_json/applications/payments/sample.json
|
828
|
-
- spec/mock_json/applications/reviews/public.json
|
829
829
|
- spec/mock_json/applications/subscriptions/fb_graph_private.json
|
830
830
|
- spec/mock_json/applications/test_users/created.json
|
831
831
|
- spec/mock_json/applications/test_users/private.json
|
@@ -862,6 +862,7 @@ test_files:
|
|
862
862
|
- spec/mock_json/pages/categories/product.json
|
863
863
|
- spec/mock_json/pages/checkins/gowalla_private.json
|
864
864
|
- spec/mock_json/pages/checkins/gowalla_public.json
|
865
|
+
- spec/mock_json/pages/conversations/list.json
|
865
866
|
- spec/mock_json/pages/insights/FbGraph_private.json
|
866
867
|
- spec/mock_json/pages/insights/FbGraph_public.json
|
867
868
|
- spec/mock_json/pages/insights/page_like_adds/FbGraph_private.json
|
@@ -906,6 +907,7 @@ test_files:
|
|
906
907
|
- spec/mock_json/questions/options/votes/matake_private.json
|
907
908
|
- spec/mock_json/statuses/with_likes.json
|
908
909
|
- spec/mock_json/thread/former_participants/private.json
|
910
|
+
- spec/mock_json/thread/messages/created.json
|
909
911
|
- spec/mock_json/thread/messages/private.json
|
910
912
|
- spec/mock_json/thread/participants/private.json
|
911
913
|
- spec/mock_json/thread/senders/private.json
|
@@ -1,14 +0,0 @@
|
|
1
|
-
module FbGraph
|
2
|
-
module Connections
|
3
|
-
module Reviews
|
4
|
-
def reviews(options = {})
|
5
|
-
reviews = self.connection :reviews, options
|
6
|
-
reviews.map! do |review|
|
7
|
-
Review.new review[:id], review.merge(
|
8
|
-
:access_token => options[:access_token] || self.access_token
|
9
|
-
)
|
10
|
-
end
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
data/lib/fb_graph/review.rb
DELETED
@@ -1,20 +0,0 @@
|
|
1
|
-
module FbGraph
|
2
|
-
class Review < Node
|
3
|
-
attr_accessor :from, :to, :message, :rating, :created_time
|
4
|
-
|
5
|
-
def initialize(identifier, attributes = {})
|
6
|
-
super
|
7
|
-
@from = if attributes[:from]
|
8
|
-
User.new(attributes[:from][:id], attributes[:from])
|
9
|
-
end
|
10
|
-
@to = if attributes[:to]
|
11
|
-
Application.new(attributes[:to][:id], attributes[:to])
|
12
|
-
end
|
13
|
-
@message = attributes[:message]
|
14
|
-
@rating = attributes[:rating]
|
15
|
-
@created_time = if attributes[:created_time]
|
16
|
-
Time.parse(attributes[:created_time]).utc
|
17
|
-
end
|
18
|
-
end
|
19
|
-
end
|
20
|
-
end
|
@@ -1,14 +0,0 @@
|
|
1
|
-
require 'spec_helper'
|
2
|
-
|
3
|
-
describe FbGraph::Connections::Reviews do
|
4
|
-
describe '#reviews' do
|
5
|
-
it 'should return reviews as FbGraph::Review' do
|
6
|
-
mock_graph :get, 'my_app/reviews', 'applications/reviews/public' do
|
7
|
-
reviews = FbGraph::Application.new('my_app').reviews
|
8
|
-
reviews.each do |review|
|
9
|
-
review.should be_instance_of(FbGraph::Review)
|
10
|
-
end
|
11
|
-
end
|
12
|
-
end
|
13
|
-
end
|
14
|
-
end
|
@@ -1,34 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"data": [{
|
3
|
-
"id": "134145643294322_191067404268812",
|
4
|
-
"from": {
|
5
|
-
"name": "Jr Nov",
|
6
|
-
"id": "1575327134"
|
7
|
-
},
|
8
|
-
"to": {
|
9
|
-
"data": [{
|
10
|
-
"name": "gem sample",
|
11
|
-
"id": "134145643294322"
|
12
|
-
}]
|
13
|
-
},
|
14
|
-
"message": "test test",
|
15
|
-
"type": "status",
|
16
|
-
"created_time": "2011-03-31T23:21:11+0000",
|
17
|
-
"updated_time": "2011-03-31T23:21:11+0000"
|
18
|
-
},
|
19
|
-
{
|
20
|
-
"id": "134145643294322_191067017602184",
|
21
|
-
"from": {
|
22
|
-
"name": "gem sample",
|
23
|
-
"id": "134145643294322"
|
24
|
-
},
|
25
|
-
"message": "test test",
|
26
|
-
"type": "status",
|
27
|
-
"created_time": "2011-03-31T23:18:46+0000",
|
28
|
-
"updated_time": "2011-03-31T23:18:46+0000"
|
29
|
-
}],
|
30
|
-
"paging": {
|
31
|
-
"previous": "https:\/\/graph.facebook.com\/134145643294322\/feed?limit=25&since=1301613671",
|
32
|
-
"next": "https:\/\/graph.facebook.com\/134145643294322\/feed?limit=25&until=1301613526"
|
33
|
-
}
|
34
|
-
}
|
@@ -1,354 +0,0 @@
|
|
1
|
-
{
|
2
|
-
"data": [
|
3
|
-
{
|
4
|
-
"id": "10150214315746960",
|
5
|
-
"from": {
|
6
|
-
"name": "Jima Montirola",
|
7
|
-
"id": "100001898964328"
|
8
|
-
},
|
9
|
-
"to": {
|
10
|
-
"name": "Graffiti",
|
11
|
-
"id": "2439131959"
|
12
|
-
},
|
13
|
-
"rating": 4,
|
14
|
-
"message": "CLICK HERE TO WATCH FREE MOVIE AND TV SHOW\nhttp://zip.ms/free-movie-and-tv-show",
|
15
|
-
"created_time": "2011-06-21T07:57:17+0000"
|
16
|
-
},
|
17
|
-
{
|
18
|
-
"id": "10150214141536960",
|
19
|
-
"from": {
|
20
|
-
"name": "James Roper",
|
21
|
-
"id": "100000222395872"
|
22
|
-
},
|
23
|
-
"to": {
|
24
|
-
"name": "Graffiti",
|
25
|
-
"id": "2439131959"
|
26
|
-
},
|
27
|
-
"rating": 5,
|
28
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcredistfree.blogspot.com/",
|
29
|
-
"created_time": "2011-06-21T03:08:57+0000"
|
30
|
-
},
|
31
|
-
{
|
32
|
-
"id": "10150213751621960",
|
33
|
-
"from": {
|
34
|
-
"name": "Gina Leonard",
|
35
|
-
"id": "530120601"
|
36
|
-
},
|
37
|
-
"to": {
|
38
|
-
"name": "Graffiti",
|
39
|
-
"id": "2439131959"
|
40
|
-
},
|
41
|
-
"rating": 5,
|
42
|
-
"message": "Get your FREE 450 FACEBOOK CREDITS! NO SCAM NO surveys NO waste of time no task its totally FREE this promo is available for the first 1000 persons only... CHECK IT OUT ENJOY..i got mine and it works get yours here http://free450promo.blogspot.com/",
|
43
|
-
"created_time": "2011-06-20T17:58:08+0000"
|
44
|
-
},
|
45
|
-
{
|
46
|
-
"id": "10150213530926960",
|
47
|
-
"from": {
|
48
|
-
"name": "Gabriel Riveros",
|
49
|
-
"id": "100002543692700"
|
50
|
-
},
|
51
|
-
"to": {
|
52
|
-
"name": "Graffiti",
|
53
|
-
"id": "2439131959"
|
54
|
-
},
|
55
|
-
"rating": 5,
|
56
|
-
"created_time": "2011-06-20T12:39:38+0000"
|
57
|
-
},
|
58
|
-
{
|
59
|
-
"id": "10150213437416960",
|
60
|
-
"from": {
|
61
|
-
"name": "Samira Thyrian",
|
62
|
-
"id": "100002512516810"
|
63
|
-
},
|
64
|
-
"to": {
|
65
|
-
"name": "Graffiti",
|
66
|
-
"id": "2439131959"
|
67
|
-
},
|
68
|
-
"rating": 3,
|
69
|
-
"message": "\"star\"",
|
70
|
-
"created_time": "2011-06-20T09:20:34+0000"
|
71
|
-
},
|
72
|
-
{
|
73
|
-
"id": "10150213372266960",
|
74
|
-
"from": {
|
75
|
-
"name": "Gayle Saxton",
|
76
|
-
"id": "1612839457"
|
77
|
-
},
|
78
|
-
"to": {
|
79
|
-
"name": "Graffiti",
|
80
|
-
"id": "2439131959"
|
81
|
-
},
|
82
|
-
"rating": 4,
|
83
|
-
"message": "Get 5000 Credits For Any Game Free\n5000fbcreditfreee.blogspot.com\nJust Avail the Offer Now Before It Ends !",
|
84
|
-
"created_time": "2011-06-20T06:25:37+0000"
|
85
|
-
},
|
86
|
-
{
|
87
|
-
"id": "10150213356621960",
|
88
|
-
"from": {
|
89
|
-
"name": "Josh Gogus",
|
90
|
-
"id": "1607634157"
|
91
|
-
},
|
92
|
-
"to": {
|
93
|
-
"name": "Graffiti",
|
94
|
-
"id": "2439131959"
|
95
|
-
},
|
96
|
-
"rating": 5,
|
97
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
98
|
-
"created_time": "2011-06-20T05:42:42+0000"
|
99
|
-
},
|
100
|
-
{
|
101
|
-
"id": "10150213319171960",
|
102
|
-
"from": {
|
103
|
-
"name": "Bruce Chan",
|
104
|
-
"id": "1798875631"
|
105
|
-
},
|
106
|
-
"to": {
|
107
|
-
"name": "Graffiti",
|
108
|
-
"id": "2439131959"
|
109
|
-
},
|
110
|
-
"rating": 2,
|
111
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\n http://5000fbcreditfreee.blogspot.com/\n\n ",
|
112
|
-
"created_time": "2011-06-20T04:23:01+0000"
|
113
|
-
},
|
114
|
-
{
|
115
|
-
"id": "10150213313911960",
|
116
|
-
"from": {
|
117
|
-
"name": "Mark Hooks",
|
118
|
-
"id": "100002072782022"
|
119
|
-
},
|
120
|
-
"to": {
|
121
|
-
"name": "Graffiti",
|
122
|
-
"id": "2439131959"
|
123
|
-
},
|
124
|
-
"rating": 4,
|
125
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
126
|
-
"created_time": "2011-06-20T04:14:45+0000"
|
127
|
-
},
|
128
|
-
{
|
129
|
-
"id": "10150213274761960",
|
130
|
-
"from": {
|
131
|
-
"name": "James Pepper",
|
132
|
-
"id": "1117338698"
|
133
|
-
},
|
134
|
-
"to": {
|
135
|
-
"name": "Graffiti",
|
136
|
-
"id": "2439131959"
|
137
|
-
},
|
138
|
-
"rating": 1,
|
139
|
-
"created_time": "2011-06-20T03:15:20+0000"
|
140
|
-
},
|
141
|
-
{
|
142
|
-
"id": "10150213132951960",
|
143
|
-
"from": {
|
144
|
-
"name": "Julien Annino",
|
145
|
-
"id": "1106280850"
|
146
|
-
},
|
147
|
-
"to": {
|
148
|
-
"name": "Graffiti",
|
149
|
-
"id": "2439131959"
|
150
|
-
},
|
151
|
-
"rating": 5,
|
152
|
-
"message": "Facebook is offering 2000 FREE Credits for Limited Time Period. This promo is available for the first 500 persons only. Just Avail the Offer Now Before It Ends ! http://2000fbcreditfree.blogspot.com/",
|
153
|
-
"created_time": "2011-06-19T23:24:17+0000"
|
154
|
-
},
|
155
|
-
{
|
156
|
-
"id": "10150213129121960",
|
157
|
-
"from": {
|
158
|
-
"name": "Jimmy Manning Jr",
|
159
|
-
"id": "100000426470491"
|
160
|
-
},
|
161
|
-
"to": {
|
162
|
-
"name": "Graffiti",
|
163
|
-
"id": "2439131959"
|
164
|
-
},
|
165
|
-
"rating": 3,
|
166
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n\n",
|
167
|
-
"created_time": "2011-06-19T23:17:25+0000"
|
168
|
-
},
|
169
|
-
{
|
170
|
-
"id": "10150212853286960",
|
171
|
-
"from": {
|
172
|
-
"name": "Beni Banbahji",
|
173
|
-
"id": "1509458591"
|
174
|
-
},
|
175
|
-
"to": {
|
176
|
-
"name": "Graffiti",
|
177
|
-
"id": "2439131959"
|
178
|
-
},
|
179
|
-
"rating": 5,
|
180
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
181
|
-
"created_time": "2011-06-19T17:24:35+0000"
|
182
|
-
},
|
183
|
-
{
|
184
|
-
"id": "10150212846076960",
|
185
|
-
"from": {
|
186
|
-
"name": "Sue Skrdland Sippel",
|
187
|
-
"id": "100000211450113"
|
188
|
-
},
|
189
|
-
"to": {
|
190
|
-
"name": "Graffiti",
|
191
|
-
"id": "2439131959"
|
192
|
-
},
|
193
|
-
"rating": 1,
|
194
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
195
|
-
"created_time": "2011-06-19T17:14:49+0000"
|
196
|
-
},
|
197
|
-
{
|
198
|
-
"id": "10150212830456960",
|
199
|
-
"from": {
|
200
|
-
"name": "John Franklin Henderson",
|
201
|
-
"id": "1555283686"
|
202
|
-
},
|
203
|
-
"to": {
|
204
|
-
"name": "Graffiti",
|
205
|
-
"id": "2439131959"
|
206
|
-
},
|
207
|
-
"rating": 2,
|
208
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
209
|
-
"created_time": "2011-06-19T16:50:20+0000"
|
210
|
-
},
|
211
|
-
{
|
212
|
-
"id": "10150212742416960",
|
213
|
-
"from": {
|
214
|
-
"name": "Tiro Cooper",
|
215
|
-
"id": "100002331330685"
|
216
|
-
},
|
217
|
-
"to": {
|
218
|
-
"name": "Graffiti",
|
219
|
-
"id": "2439131959"
|
220
|
-
},
|
221
|
-
"rating": 4,
|
222
|
-
"message": "Get your free 450 Facebook credits...NO surveys NO waste of time no task its totaly free the first 5000 this promo is available for the first 1000 persons only... CHECK IT OUT & ENJOY... i got mine and it works get yours here http://realfreefacebookcredits.blogspot.com/ \n",
|
223
|
-
"created_time": "2011-06-19T15:13:21+0000"
|
224
|
-
},
|
225
|
-
{
|
226
|
-
"id": "10150212650116960",
|
227
|
-
"from": {
|
228
|
-
"name": "BJay CashAlimoot",
|
229
|
-
"id": "1050120403"
|
230
|
-
},
|
231
|
-
"to": {
|
232
|
-
"name": "Graffiti",
|
233
|
-
"id": "2439131959"
|
234
|
-
},
|
235
|
-
"rating": 5,
|
236
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
237
|
-
"created_time": "2011-06-19T12:37:17+0000"
|
238
|
-
},
|
239
|
-
{
|
240
|
-
"id": "10150212636796960",
|
241
|
-
"from": {
|
242
|
-
"name": "Chanda Anderson",
|
243
|
-
"id": "100000129021505"
|
244
|
-
},
|
245
|
-
"to": {
|
246
|
-
"name": "Graffiti",
|
247
|
-
"id": "2439131959"
|
248
|
-
},
|
249
|
-
"rating": 5,
|
250
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n",
|
251
|
-
"created_time": "2011-06-19T12:12:26+0000"
|
252
|
-
},
|
253
|
-
{
|
254
|
-
"id": "10150212636701960",
|
255
|
-
"from": {
|
256
|
-
"name": "Marilyn King",
|
257
|
-
"id": "1676236979"
|
258
|
-
},
|
259
|
-
"to": {
|
260
|
-
"name": "Graffiti",
|
261
|
-
"id": "2439131959"
|
262
|
-
},
|
263
|
-
"rating": 3,
|
264
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
265
|
-
"created_time": "2011-06-19T12:12:14+0000"
|
266
|
-
},
|
267
|
-
{
|
268
|
-
"id": "10150212582536960",
|
269
|
-
"from": {
|
270
|
-
"name": "Siti Nur Maisarah",
|
271
|
-
"id": "100001567784047"
|
272
|
-
},
|
273
|
-
"to": {
|
274
|
-
"name": "Graffiti",
|
275
|
-
"id": "2439131959"
|
276
|
-
},
|
277
|
-
"rating": 5,
|
278
|
-
"message": "I like it !",
|
279
|
-
"created_time": "2011-06-19T10:10:41+0000"
|
280
|
-
},
|
281
|
-
{
|
282
|
-
"id": "10150212576206960",
|
283
|
-
"from": {
|
284
|
-
"name": "Pico Yoomi",
|
285
|
-
"id": "100000999342831"
|
286
|
-
},
|
287
|
-
"to": {
|
288
|
-
"name": "Graffiti",
|
289
|
-
"id": "2439131959"
|
290
|
-
},
|
291
|
-
"rating": 5,
|
292
|
-
"message": "I want to be new",
|
293
|
-
"created_time": "2011-06-19T09:54:19+0000"
|
294
|
-
},
|
295
|
-
{
|
296
|
-
"id": "10150212423586960",
|
297
|
-
"from": {
|
298
|
-
"name": "Bubba Harvey",
|
299
|
-
"id": "100000665588837"
|
300
|
-
},
|
301
|
-
"to": {
|
302
|
-
"name": "Graffiti",
|
303
|
-
"id": "2439131959"
|
304
|
-
},
|
305
|
-
"rating": 5,
|
306
|
-
"created_time": "2011-06-19T03:44:19+0000"
|
307
|
-
},
|
308
|
-
{
|
309
|
-
"id": "10150212382701960",
|
310
|
-
"from": {
|
311
|
-
"name": "Elaine Montgomery",
|
312
|
-
"id": "618755752"
|
313
|
-
},
|
314
|
-
"to": {
|
315
|
-
"name": "Graffiti",
|
316
|
-
"id": "2439131959"
|
317
|
-
},
|
318
|
-
"rating": 5,
|
319
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/",
|
320
|
-
"created_time": "2011-06-19T02:24:47+0000"
|
321
|
-
},
|
322
|
-
{
|
323
|
-
"id": "10150212373411960",
|
324
|
-
"from": {
|
325
|
-
"name": "Isaac Arazi",
|
326
|
-
"id": "100001556715786"
|
327
|
-
},
|
328
|
-
"to": {
|
329
|
-
"name": "Graffiti",
|
330
|
-
"id": "2439131959"
|
331
|
-
},
|
332
|
-
"rating": 5,
|
333
|
-
"message": "Hey Check This Site, Which is offering 5000 FREE Credits for Limited Time Period. Just Avail the Offer Now Before It Ends !\nhttp://5000fbcreditfreee.blogspot.com/\n\n",
|
334
|
-
"created_time": "2011-06-19T02:09:25+0000"
|
335
|
-
},
|
336
|
-
{
|
337
|
-
"id": "10150212210786960",
|
338
|
-
"from": {
|
339
|
-
"name": "Kyler Walker",
|
340
|
-
"id": "100002226109916"
|
341
|
-
},
|
342
|
-
"to": {
|
343
|
-
"name": "Graffiti",
|
344
|
-
"id": "2439131959"
|
345
|
-
},
|
346
|
-
"rating": 3,
|
347
|
-
"message": "yea 3 stars\n\n",
|
348
|
-
"created_time": "2011-06-18T20:50:59+0000"
|
349
|
-
}
|
350
|
-
],
|
351
|
-
"paging": {
|
352
|
-
"next": "https://graph.facebook.com/2439131959/reviews?limit=25&offset=25"
|
353
|
-
}
|
354
|
-
}
|