gplus 0.5.0 → 1.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/CHANGELOG.md +9 -1
- data/README.md +80 -34
- data/gplus.gemspec +3 -0
- data/lib/gplus/activity.rb +18 -6
- data/lib/gplus/client.rb +12 -3
- data/lib/gplus/comment.rb +6 -6
- data/lib/gplus/person.rb +12 -1
- data/lib/gplus/version.rb +1 -1
- data/spec/fixtures/activities.json +1 -0
- data/spec/fixtures/activity.json +1 -0
- data/spec/fixtures/comment.json +1 -0
- data/spec/fixtures/comments.json +1 -0
- data/spec/fixtures/people.json +1 -0
- data/spec/fixtures/person.json +1 -0
- data/spec/gplus/activity_spec.rb +67 -2
- data/spec/gplus/client_spec.rb +2 -0
- data/spec/gplus/comment_spec.rb +36 -2
- data/spec/gplus/person_spec.rb +43 -1
- data/spec/spec_helper.rb +16 -1
- metadata +37 -9
data/CHANGELOG.md
CHANGED
@@ -1,8 +1,16 @@
|
|
1
1
|
# Changelog
|
2
2
|
|
3
|
-
##
|
3
|
+
## v1.0.0: 2011/11/13
|
4
|
+
|
5
|
+
* Add support for searching for People and Activities
|
6
|
+
* Full test coverage of People, Activity and Comment methods
|
7
|
+
* Change `#list_activities` and `#list_comments` methods to take an options hash rather than separate :results and :page arguments
|
8
|
+
|
9
|
+
## v0.5.0: 2011/10/15
|
4
10
|
|
5
11
|
* Add support for the Comments API
|
12
|
+
* Stub out rspec examples
|
13
|
+
* Improve README
|
6
14
|
|
7
15
|
## v0.4.0: 2011/09/18
|
8
16
|
|
data/README.md
CHANGED
@@ -6,7 +6,7 @@ gplus is a complete implementation of the Google+ API, with help from OAuth2 and
|
|
6
6
|
|
7
7
|
I'm aiming to produce something light-weight, well documented, and thoroughly tested.
|
8
8
|
|
9
|
-
It currently has full support for the People and
|
9
|
+
It currently has full support for the People, Activities and Comments APIs, using either OAuth requests for private data or API key requests for public data.
|
10
10
|
|
11
11
|
* [Documentation](http://rubydoc.info/github/nfm/gplus/master/frames)
|
12
12
|
* [Issues](https://github.com/nfm/gplus/issues)
|
@@ -14,9 +14,7 @@ It currently has full support for the People and Activities APIs, using either O
|
|
14
14
|
|
15
15
|
## Installation
|
16
16
|
|
17
|
-
Add
|
18
|
-
|
19
|
-
gem "gplus"
|
17
|
+
Add `gplus` to your Gemfile, then run `bundle install`.
|
20
18
|
|
21
19
|
## Creating and configuring your application
|
22
20
|
|
@@ -32,17 +30,17 @@ Currently, the Google+ API limits applications to 1,000 API requests per day. Yo
|
|
32
30
|
|
33
31
|
Create an API client using your API key:
|
34
32
|
|
35
|
-
@
|
33
|
+
@gplus = Gplus::Client.new(
|
36
34
|
:api_key => 'YOUR_API_KEY'
|
37
35
|
)
|
38
36
|
|
39
|
-
You can now make requests for public data using the methods below
|
37
|
+
You can now make requests for public data using the methods below.
|
40
38
|
|
41
39
|
## Authorized requests
|
42
40
|
|
43
41
|
First, create an API client using your Client ID, Client Secret, and one of the redirect URIs you have allowed:
|
44
42
|
|
45
|
-
@
|
43
|
+
@gplus = Gplus::Client.new(
|
46
44
|
:client_id => 'YOUR_CLIENT_ID',
|
47
45
|
:client_secret => 'YOUR_CLIENT_SECRET',
|
48
46
|
:redirect_uri => 'http://example.com/oauth/callback'
|
@@ -50,7 +48,7 @@ First, create an API client using your Client ID, Client Secret, and one of the
|
|
50
48
|
|
51
49
|
Generate an authorization URL, and use it in a view:
|
52
50
|
|
53
|
-
@auth_url = @
|
51
|
+
@auth_url = @gplus.authorization_url
|
54
52
|
=> https://accounts.google.com/o/oauth2/auth?response_type=code&client_id=YOUR_CLIENT_ID&redirect_uri= ...
|
55
53
|
|
56
54
|
= link_to 'Authorize This App', @auth_url
|
@@ -59,7 +57,7 @@ After the user authorizes your app, they will be redirected to your `redirect_ur
|
|
59
57
|
|
60
58
|
class OauthController < ApplicationController
|
61
59
|
def callback
|
62
|
-
access_token =
|
60
|
+
access_token = @gplus.authorize(params[:code])
|
63
61
|
current_user.update_attributes(
|
64
62
|
:token => access_token.token,
|
65
63
|
:refresh_token => access_token.refresh_token,
|
@@ -70,7 +68,7 @@ After the user authorizes your app, they will be redirected to your `redirect_ur
|
|
70
68
|
|
71
69
|
Now you can create an authorized client instance using the stored OAuth token:
|
72
70
|
|
73
|
-
@
|
71
|
+
@gplus = Gplus::Client.new(
|
74
72
|
:token => current_user.token,
|
75
73
|
:refresh_token => current_user.refresh_token,
|
76
74
|
:token_expires_at => current_user.token_expires_at,
|
@@ -87,8 +85,8 @@ Gplus will automatically request a new token if the provided token has expired.
|
|
87
85
|
|
88
86
|
You can determine whether a token has been refreshed by calling `access_token_refreshed?`:
|
89
87
|
|
90
|
-
if @
|
91
|
-
access_token = @
|
88
|
+
if @gplus.access_token_refreshed?
|
89
|
+
access_token = @gplus.access_token
|
92
90
|
current_user.update_attributes(
|
93
91
|
:token => access_token.token,
|
94
92
|
:token_expires_at => access_token.expires_at
|
@@ -99,9 +97,9 @@ The refreshed OAuth token will have `:refresh_token` set to `nil`. Keep using th
|
|
99
97
|
|
100
98
|
## [People](http://developers.google.com/+/api/latest/people)
|
101
99
|
|
102
|
-
Get a person's profile with
|
100
|
+
Get a person's profile with `.get_person`:
|
103
101
|
|
104
|
-
person =
|
102
|
+
person = @gplus.get_person(id)
|
105
103
|
|
106
104
|
You can use the id 'me' in place of a Person ID to fetch information about the user the client is authorized as.
|
107
105
|
|
@@ -111,13 +109,35 @@ The person's profile will be returned as a nested hash:
|
|
111
109
|
person[:urls].count
|
112
110
|
person[:name][:middleName]
|
113
111
|
|
114
|
-
|
112
|
+
Search for public profiles with `.search_people`:
|
113
|
+
|
114
|
+
people = @gplus.search_people(:query => 'Larry Page')
|
115
|
+
|
116
|
+
Matching profiles will be returned in a nested hash. The actual profiles are in the `:items` array:
|
117
|
+
|
118
|
+
people[:selfLink]
|
119
|
+
people[:nextPageToken]
|
120
|
+
people[:items]
|
121
|
+
|
122
|
+
By default, this will fetch 10 profiles. You can fetch between 1 and 20 by passing a `:maxResults` option:
|
123
|
+
|
124
|
+
# Get 20 results
|
125
|
+
@gplus.search_people(:query => 'Larry Page', :maxResults => 20)
|
126
|
+
|
127
|
+
If you want more than 20 results, take the `:nextPageToken` returned from your first request, and pass it as a `:pageToken` option:
|
128
|
+
|
129
|
+
people = @gplus.search_people(:query => 'Larry Page', :maxResults => 20)
|
130
|
+
more_people = @gplus.search_people(:query => 'Larry Page', :maxResults => 20, :pageToken => people[:nextPageToken])
|
131
|
+
|
132
|
+
Omitting the `:query` option will simply return all profiles.
|
133
|
+
|
134
|
+
See the Google+ API documentation for [People](http://developers.google.com/+/api/latest/people), [People: get](http://developers.google.com/+/api/latest/people/get) and [People: search](http://developers.google.com/+/api/latest/people/search).
|
115
135
|
|
116
136
|
## [Activities](http://developers.google.com/+/api/latest/activities)
|
117
137
|
|
118
|
-
Get an activity with
|
138
|
+
Get an activity with `.get_activity`:
|
119
139
|
|
120
|
-
activity =
|
140
|
+
activity = @gplus.get_activity(id)
|
121
141
|
|
122
142
|
The activity will be returned as a nested hash:
|
123
143
|
|
@@ -125,9 +145,9 @@ The activity will be returned as a nested hash:
|
|
125
145
|
activity[:object][:replies][:totalItems]
|
126
146
|
activity[:attachments].each do { |attachment| attachment[:url] }
|
127
147
|
|
128
|
-
List a person's activities with
|
148
|
+
List a person's activities with `.list_activities`:
|
129
149
|
|
130
|
-
activities =
|
150
|
+
activities = @gplus.list_activities(person_id)
|
131
151
|
|
132
152
|
The list will be returned as a nested hash. The actual activities are in the `:items` array:
|
133
153
|
|
@@ -135,23 +155,49 @@ The list will be returned as a nested hash. The actual activities are in the `:i
|
|
135
155
|
activities[:updated]
|
136
156
|
activities[:items].each { |activity| activity[:title] }
|
137
157
|
|
138
|
-
By default, this will fetch 20 activities. You can fetch between 1 and 100 by passing a `:
|
158
|
+
By default, this will fetch 20 activities. You can fetch between 1 and 100 by passing a `:maxResults` option:
|
139
159
|
|
140
160
|
# Get 80 results
|
141
|
-
|
161
|
+
@gplus.list_activities(person_id, :maxResults => 80)
|
162
|
+
|
163
|
+
If you want more than 100 results, take the `:nextPageToken` returned from your first request, and pass it as a `:pageToken` option:
|
164
|
+
|
165
|
+
activities = @gplus.list_activities(person_id, :maxResults => 100)
|
166
|
+
more_activities = @gplus.list_activities(person_id, :maxResults => 100, :pageToken => activities[:nextPageToken])
|
167
|
+
|
168
|
+
Search for public activities with `.search_activities`:
|
169
|
+
|
170
|
+
activities = @gplus.search_activities(:query => 'Programming')
|
171
|
+
|
172
|
+
Matching activities will be returned in a nested hash. The actual activities are in the `:items` array:
|
173
|
+
|
174
|
+
activities[:selfLink]
|
175
|
+
activities[:nextPageToken]
|
176
|
+
activities[:items]
|
177
|
+
|
178
|
+
By default, this will fetch 10 activities. You can fetch between 1 and 20 by passing a `:maxResults` option:
|
179
|
+
|
180
|
+
# Get 20 results
|
181
|
+
@gplus.search_activities(:query => 'Programming', :maxResults => 20)
|
182
|
+
|
183
|
+
If you want more than 20 results, take the `:nextPageToken` returned from your first request, and pass it as a `:pageToken` option:
|
184
|
+
|
185
|
+
activities = @gplus.search_activities(:query => 'Programming', :maxResults => 20)
|
186
|
+
more_activities = @gplus.search_activities(:query => 'Programming', :maxResults => 20, :pageToken => activities[:nextPageToken])
|
187
|
+
|
188
|
+
Omitting the `:query` option will simply return all activities.
|
142
189
|
|
143
|
-
|
190
|
+
You can specify an order for the activities that are returned by passing an `:orderBy` option. Acceptable values are "best" and "recent" (the default).
|
144
191
|
|
145
|
-
activities =
|
146
|
-
more_activities = client.list_activities(person_id, :results => 100, :page => activities[:nextPageToken])
|
192
|
+
activities = @gplus.search_activities(:query => 'Programming', :orderBy => "best")
|
147
193
|
|
148
|
-
See the Google+ API documentation for [Activities](http://developers.google.com/+/api/latest/activities), [Activities: get](http://developers.google.com/+/api/latest/activities/get)
|
194
|
+
See the Google+ API documentation for [Activities](http://developers.google.com/+/api/latest/activities), [Activities: get](http://developers.google.com/+/api/latest/activities/get), [Activities: list](http://developers.google.com/+/api/latest/activities/list), and [Activities: search](http://developers.google.com/+/api/latest/activities/search).
|
149
195
|
|
150
196
|
## [Comments](http://developers.google.com/+/api/latest/comments)
|
151
197
|
|
152
|
-
Get an activity with
|
198
|
+
Get an activity with `.get_comment`:
|
153
199
|
|
154
|
-
comment =
|
200
|
+
comment = @gplus.get_comment(id)
|
155
201
|
|
156
202
|
The activity will be returned as a nested hash:
|
157
203
|
|
@@ -159,9 +205,9 @@ The activity will be returned as a nested hash:
|
|
159
205
|
comment[:object][:content][:totalItems]
|
160
206
|
comment[:inReplyTo][:id]
|
161
207
|
|
162
|
-
List an activity's comments with
|
208
|
+
List an activity's comments with `.list_comments`:
|
163
209
|
|
164
|
-
comments =
|
210
|
+
comments = @gplus.list_comments(activity_id)
|
165
211
|
|
166
212
|
The list will be returned as a nested hash. The actual comments are in the `:items` array:
|
167
213
|
|
@@ -169,15 +215,15 @@ The list will be returned as a nested hash. The actual comments are in the `:ite
|
|
169
215
|
comments[:updated]
|
170
216
|
comments[:items].each { |comment| comment[:object][:content] }
|
171
217
|
|
172
|
-
By default, this will fetch 20 comments. You can fetch between 1 and 100 by passing a `:
|
218
|
+
By default, this will fetch 20 comments. You can fetch between 1 and 100 by passing a `:maxResults` option:
|
173
219
|
|
174
220
|
# Get 80 results
|
175
|
-
|
221
|
+
@gplus.list_comments(activity_id, :maxResults => 80)
|
176
222
|
|
177
|
-
If you want more than 100 results, take the `:nextPageToken` returned from your first request, and pass it as a `:
|
223
|
+
If you want more than 100 results, take the `:nextPageToken` returned from your first request, and pass it as a `:pageToken` option:
|
178
224
|
|
179
|
-
comments =
|
180
|
-
more_comments =
|
225
|
+
comments = @gplus.list_comments(activity_id, :maxResults => 100)
|
226
|
+
more_comments = @gplus.list_comments(activity_id, :maxResults => 100, :pageToken => comments[:nextPageToken])
|
181
227
|
|
182
228
|
See the Google+ API documentation for [Comments](http://developers.google.com/+/api/latest/comments), [Comments: get](http://developers.google.com/+/api/latest/comments/get) and [Comments: list](http://developers.google.com/+/api/latest/comments/list).
|
183
229
|
|
data/gplus.gemspec
CHANGED
@@ -18,5 +18,8 @@ Gem::Specification.new do |gem|
|
|
18
18
|
gem.required_rubygems_version = Gem::Requirement.new('>= 1.3.6')
|
19
19
|
gem.add_runtime_dependency 'multi_json', '~> 1.0'
|
20
20
|
gem.add_runtime_dependency 'oauth2', '~> 0.5'
|
21
|
+
|
21
22
|
gem.add_development_dependency 'rspec'
|
23
|
+
gem.add_development_dependency 'webmock'
|
24
|
+
gem.add_development_dependency 'simplecov'
|
22
25
|
end
|
data/lib/gplus/activity.rb
CHANGED
@@ -4,7 +4,7 @@ module Gplus
|
|
4
4
|
# See http://developers.google.com/+/api/latest/activities/get for more details.
|
5
5
|
#
|
6
6
|
# @param [String] id The unique ID of the activity you want to retrieve.
|
7
|
-
# @return [Hash] A nested hash representation of an {http://developers.google.com/+/api/latest/activities Activity resource}.
|
7
|
+
# @return [Hash] A nested hash representation of an {http://developers.google.com/+/api/latest/activities#resource Activity resource}.
|
8
8
|
def get_activity(id)
|
9
9
|
get("activities/#{id}")
|
10
10
|
end
|
@@ -13,11 +13,23 @@ module Gplus
|
|
13
13
|
# See http://developers.google.com/+/api/latest/activities/list for more details.
|
14
14
|
#
|
15
15
|
# @param [String] person_id The unique ID of the person whose activities you want to list. Pass the string 'me' to list the activities for the person that the API client is authorized as.
|
16
|
-
# @
|
17
|
-
# @
|
18
|
-
# @return [Hash] A nested hash representation of {http://developers.google.com/+/api/latest/activities/list list of activities}.
|
19
|
-
def list_activities(person_id,
|
20
|
-
get("people/#{person_id}/activities/public",
|
16
|
+
# @option options [Integer] maxResults The number of activities, between 1 and 100, to return. Defaults to 20.
|
17
|
+
# @option options [String] pageToken The page of activities to fetch. Pass the value of :nextPageToken from the previous result set to get the next page of results.
|
18
|
+
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/activities/list#response list of activities}.
|
19
|
+
def list_activities(person_id, options = {})
|
20
|
+
get("people/#{person_id}/activities/public", options)
|
21
|
+
end
|
22
|
+
|
23
|
+
# Search all public Google+ activities.
|
24
|
+
# See https://developers.google.com/+/api/latest/activities/search for more details
|
25
|
+
#
|
26
|
+
# @option options [String] query The full text query to search for
|
27
|
+
# @option options [Integer] maxResults The number of activities, between 1 and 20, to return. Defaults to 10.
|
28
|
+
# @option options [String] pageToken The page of activities to fetch. Pass the value of :nextPageToken from the previous result set to get the next page of results.
|
29
|
+
# @option options [String] orderBy Specifies how to order search results. Acceptable values are "best" and "recent". Defaults to "recent".
|
30
|
+
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/activities/search#response search result for activities}.
|
31
|
+
def search_activities(options = {})
|
32
|
+
get("activities", options)
|
21
33
|
end
|
22
34
|
end
|
23
35
|
end
|
data/lib/gplus/client.rb
CHANGED
@@ -1,8 +1,14 @@
|
|
1
1
|
require 'gplus/activity'
|
2
|
+
require 'gplus/comment'
|
2
3
|
require 'gplus/person'
|
3
4
|
|
4
5
|
module Gplus
|
5
6
|
class Client
|
7
|
+
DEFAULT_ENDPOINT = 'https://www.googleapis.com/plus'
|
8
|
+
DEFAULT_API_VERSION = 'v1'
|
9
|
+
|
10
|
+
attr_accessor :endpoint, :api_version
|
11
|
+
|
6
12
|
# Create a Google+ API client. Read the {file:README.md README} to find learn about the different ways of initializing a client.
|
7
13
|
#
|
8
14
|
# @param [Hash] options
|
@@ -15,6 +21,9 @@ module Gplus
|
|
15
21
|
# @option options [String] :redirect_uri The default URI to redirect to after authorization. You can override this in many other methods. It must be specified as an authorized URI in your application's console. Required to generate an authorization URL with #authorize_url.
|
16
22
|
# @return [Gplus::Client] A Google+ API client.
|
17
23
|
def initialize(options = {})
|
24
|
+
self.endpoint = DEFAULT_ENDPOINT
|
25
|
+
self.api_version = DEFAULT_API_VERSION
|
26
|
+
|
18
27
|
@api_key = options[:api_key]
|
19
28
|
@token = options[:token]
|
20
29
|
@refresh_token = options[:refresh_token]
|
@@ -26,7 +35,7 @@ module Gplus
|
|
26
35
|
@oauth_client = OAuth2::Client.new(
|
27
36
|
@client_id,
|
28
37
|
@client_secret,
|
29
|
-
:site =>
|
38
|
+
:site => self.endpoint,
|
30
39
|
:authorize_url => 'https://accounts.google.com/o/oauth2/auth',
|
31
40
|
:token_url => 'https://accounts.google.com/o/oauth2/token'
|
32
41
|
)
|
@@ -70,9 +79,9 @@ module Gplus
|
|
70
79
|
private
|
71
80
|
def get(path, params = {})
|
72
81
|
if access_token
|
73
|
-
response = access_token.get("
|
82
|
+
response = access_token.get("#{self.api_version}/#{path}", params)
|
74
83
|
else
|
75
|
-
response = @oauth_client.request(:get, "
|
84
|
+
response = @oauth_client.request(:get, "#{self.api_version}/#{path}", { :params => params.merge(:key => @api_key) })
|
76
85
|
end
|
77
86
|
MultiJson.decode(response.body)
|
78
87
|
end
|
data/lib/gplus/comment.rb
CHANGED
@@ -4,7 +4,7 @@ module Gplus
|
|
4
4
|
# See https://developers.google.com/+/api/latest/comments/get for more details.
|
5
5
|
#
|
6
6
|
# @param [String] id The unique ID of the comment you want to retrieve.
|
7
|
-
# @returb [Hash] A nested hash representation of a {https://developers.google.com/+/api/latest/comments Comment resource}.
|
7
|
+
# @returb [Hash] A nested hash representation of a {https://developers.google.com/+/api/latest/comments#resource Comment resource}.
|
8
8
|
def get_comment(id)
|
9
9
|
get("comments/#{id}")
|
10
10
|
end
|
@@ -13,11 +13,11 @@ module Gplus
|
|
13
13
|
# See http://developers.google.com/+/api/latest/comments/list for more details.
|
14
14
|
#
|
15
15
|
# @param [String] activity_id The unique ID of the activity whose comments you want to list.
|
16
|
-
# @
|
17
|
-
# @
|
18
|
-
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/comments/list list of comments}.
|
19
|
-
def list_comments(activity_id,
|
20
|
-
get("activities/#{activity_id}/comments",
|
16
|
+
# @option options [Integer] maxResults The number of comments, between 0 and 100, to return. Defaults to 20.
|
17
|
+
# @option options [String] pageToken The page of comments to fetch. Pass the value of :nextPageToken from the previous result set to get the next page of results.
|
18
|
+
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/comments/list#response list of comments}.
|
19
|
+
def list_comments(activity_id, options = {})
|
20
|
+
get("activities/#{activity_id}/comments", options)
|
21
21
|
end
|
22
22
|
end
|
23
23
|
end
|
data/lib/gplus/person.rb
CHANGED
@@ -4,9 +4,20 @@ module Gplus
|
|
4
4
|
# See http://developers.google.com/+/api/latest/people/get for more details.
|
5
5
|
#
|
6
6
|
# @param [String] id The unique ID of the person whose profile you want to retrieve. Pass the string 'me' to fetch the profile for the person that the API client is authorized as.
|
7
|
-
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/people
|
7
|
+
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/people#resource Person resource}
|
8
8
|
def get_person(id)
|
9
9
|
get("people/#{id}")
|
10
10
|
end
|
11
|
+
|
12
|
+
# Search all public Google+ profiles.
|
13
|
+
# See https://developers.google.com/+/api/latest/people/search for more details
|
14
|
+
#
|
15
|
+
# @option options [String] query The full text query to search for
|
16
|
+
# @option options [Integer] maxResults The number of profiles, between 1 and 20, to return. Defaults to 10.
|
17
|
+
# @option options [String] pageToken The page of profiles to fetch. Pass the value of :nextPageToken from the previous result set to get the next page of results.
|
18
|
+
# @return [Hash] A nested hash representation of a {http://developers.google.com/+/api/latest/people/search#response search result for people}.
|
19
|
+
def search_people(options = {})
|
20
|
+
get("people", options)
|
21
|
+
end
|
11
22
|
end
|
12
23
|
end
|
data/lib/gplus/version.rb
CHANGED
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#activityFeed","nextPageToken":"eJxb85aBtbiIQTArsSxRLycxL13PM68kNT21SOjRgiXfG9stmBgYPRlYyxJzSlMrihgEEOr8SnOTUova1kyV5Z7yoJuJgaGigIFBtaG4kKGOAQTY4SyR0iIGpmhP310JamWvNi2FKmVg362wJeHKzUAL28mnq2ZbFuxbrHvym7_sB6uelwXbS0GaWRkYGHU4GOBAgQENNKByWdDlwUAASgPtZQSbgWIMnM_IIOAAUgAGDiDMiM9UFAs4MJ2GBhTA9kMBB8QCDA8JKLDAbHRAFkcJAha4kCBMkEkASbEAWL8CEr8B1TSCgAMLl5ER5jIwYGTABRRQuUzw8GdkYkJyoEADmN0AkkRyHbJHQFyYUxyQRR2QghIHgLiPA48kyJ2aOAIGuyi6OAvUGWBSAEMxLHGyCIBthCkQUEBTBuKzEPQQVivA_uNoIFUnB5SEa8SWwpkYDHCaxwT1O0QfI65wZoAkPmT_Y6hswGAgAJrBAuCwQjNBAc26AzidggzADmfF9Dh6snbAUubAZbAAkOMAjnpE_A","selfLink":"https://www.googleapis.com/plus/v1/people/106189723444098348646/activities/public?","nextLink":"https://www.googleapis.com/plus/v1/people/106189723444098348646/activities/public?maxResults=20&pageToken=eJxb85aBtbiIQTArsSxRLycxL13PM68kNT21SOjRgiXfG9stmBgYPRlYyxJzSlMrihgEEOr8SnOTUova1kyV5Z7yoJuJgaGigIFBtaG4kKGOAQTY4SyR0iIGpmhP310JamWvNi2FKmVg362wJeHKzUAL28mnq2ZbFuxbrHvym7_sB6uelwXbS0GaWRkYGHU4GOBAgQENNKByWdDlwUAASgPtZQSbgWIMnM_IIOAAUgAGDiDMiM9UFAs4MJ2GBhTA9kMBB8QCDA8JKLDAbHRAFkcJAha4kCBMkEkASbEAWL8CEr8B1TSCgAMLl5ER5jIwYGTABRRQuUzw8GdkYkJyoEADmN0AkkRyHbJHQFyYUxyQRR2QghIHgLiPA48kyJ2aOAIGuyi6OAvUGWBSAEMxLHGyCIBthCkQUEBTBuKzEPQQVivA_uNoIFUnB5SEa8SWwpkYDHCaxwT1O0QfI65wZoAkPmT_Y6hswGAgAJrBAuCwQjNBAc26AzidggzADmfF9Dh6snbAUubAZbAAkOMAjnpE_A","title":"Plus Public Activity Feed for Larry Page","updated":"2011-11-13T00:13:47.411Z","id":"tag:google.com,2010:/plus/people/106189723444098348646/activities/public","items":[{"kind":"plus#activity","title":"Super excited we are launching +pages today. Now everyone's favorite brands--companies, not for p...","published":"2011-11-07T18:22:23.000Z","updated":"2011-11-07T18:22:24.060Z","id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Super excited we are launching +pages today. Now everyone's favorite brands--companies, not for profits--can get their page on Google+.<br /><br />Google Blog post: <br /><a href=\"http://googleblog.blogspot.com/2011/11/google-pages-connect-with-all-things.html\" >http://googleblog.blogspot.com/2011/11/google-pages-connect-with-all-things.html</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2","replies":{"totalItems":353,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":2159,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":942,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"video","displayName":"Google+: Pages","url":"javascript:void(0);","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fytimg.googleusercontent.com%2Fvi%2F8Ccf5GxM7vg%2Fdefault.jpg","type":"image/jpeg"}}]},"crosspostSource":"oz:106189723444098348646.1337f3fe5dd.1","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Thanks to Mayor Villaraigosa for his help celebrating the opening of our new Google LA campus. Ch...","published":"2011-11-04T17:36:36.000Z","updated":"2011-11-04T17:36:37.446Z","id":"z13dizgppsn3efjj504cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/fPEUcHBn98u","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Thanks to Mayor Villaraigosa for his help celebrating the opening of our new Google LA campus. Check out our our new space in Venice! Never would have guessed we'd have a building with gigantic outdoor binoculars!","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/fPEUcHBn98u","replies":{"totalItems":250,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13dizgppsn3efjj504cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":1636,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13dizgppsn3efjj504cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":469,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13dizgppsn3efjj504cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_3198.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194664166609474","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-foj-KvaeIZQ%2FTrQhf_G90kI%2FAAAAAAABN3A%2FVLQl2bsGl80%2Fw288-h288%2FIMG_3198.JPG","type":"image/jpeg","height":120,"width":180},"fullImage":{"url":"https://lh5.googleusercontent.com/-foj-KvaeIZQ/TrQhf_G90kI/AAAAAAABN3A/VLQl2bsGl80/IMG_3198.JPG","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo","content":"IMG_3245.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194668146013026","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-89NhUFZoPSM%2FTrQhgN7us2I%2FAAAAAAABN3E%2Flql9L-y_1mU%2Fw288-h288%2FIMG_3245.JPG","type":"image/jpeg","height":120,"width":180},"fullImage":{"url":"https://lh3.googleusercontent.com/-89NhUFZoPSM/TrQhgN7us2I/AAAAAAABN3E/lql9L-y_1mU/IMG_3245.JPG","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo","content":"IMG_3263.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194679289099090","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh4.googleusercontent.com%2F-UBEEurW4juU%2FTrQhg3ccs1I%2FAAAAAAABN3Q%2FPZekdFNZ080%2Fw288-h288%2FIMG_3263.JPG","type":"image/jpeg","height":120,"width":180},"fullImage":{"url":"https://lh4.googleusercontent.com/-UBEEurW4juU/TrQhg3ccs1I/AAAAAAABN3Q/PZekdFNZ080/IMG_3263.JPG","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo","content":"IMG_0683 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195055117717474","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-75vSUnMiduY%2FTrQh2vg-T-I%2FAAAAAAABN3Y%2FYKgHjznQPVQ%2Fw288-h288%2FIMG_0683%252B%2525281%252529.jpg","type":"image/jpeg","height":120,"width":213},"fullImage":{"url":"https://lh5.googleusercontent.com/-75vSUnMiduY/TrQh2vg-T-I/AAAAAAABN3Y/YKgHjznQPVQ/IMG_0683%2B%25281%2529.jpg","type":"image/jpeg","height":900,"width":1600}},{"objectType":"photo","content":"IMG_0682 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195054718882738","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-yvjvXNySpdY%2FTrQh2uB4k7I%2FAAAAAAABN3c%2FxtVIkszCE_Y%2Fw288-h288%2FIMG_0682%252B%2525281%252529.jpg","type":"image/jpeg","height":120,"width":167},"fullImage":{"url":"https://lh3.googleusercontent.com/-yvjvXNySpdY/TrQh2uB4k7I/AAAAAAABN3c/xtVIkszCE_Y/IMG_0682%2B%25281%2529.jpg","type":"image/jpeg","height":1143,"width":1600}},{"objectType":"photo","content":"IMG_0999 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195059894115554","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-C5e086kjOYA%2FTrQh3BTwXOI%2FAAAAAAABN3g%2F9n9uYze0xyk%2Fw288-h288%2FIMG_0999%252B%2525281%252529.jpg","type":"image/jpeg","height":120,"width":184},"fullImage":{"url":"https://lh5.googleusercontent.com/-C5e086kjOYA/TrQh3BTwXOI/AAAAAAABN3g/9n9uYze0xyk/IMG_0999%2B%25281%2529.jpg","type":"image/jpeg","height":1042,"width":1600}},{"objectType":"photo","content":"IMG_1024.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195078921944082","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh6.googleusercontent.com%2F-iL57xW3xXKM%2FTrQh4IMV_BI%2FAAAAAAABN3k%2FJmTomL7LT9g%2Fw288-h288%2FIMG_1024.jpg","type":"image/jpeg","height":120,"width":179},"fullImage":{"url":"https://lh6.googleusercontent.com/-iL57xW3xXKM/TrQh4IMV_BI/AAAAAAABN3k/JmTomL7LT9g/IMG_1024.jpg","type":"image/jpeg","height":1067,"width":1600}},{"objectType":"photo","content":"IMG_1045 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195089866811410","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-A03KL0pHCPo%2FTrQh4w9zaBI%2FAAAAAAABN3s%2F5ZQJT8GYOlE%2Fw288-h288%2FIMG_1045%252B%2525281%252529.jpg","type":"image/jpeg","height":120,"width":191},"fullImage":{"url":"https://lh3.googleusercontent.com/-A03KL0pHCPo/TrQh4w9zaBI/AAAAAAABN3s/5ZQJT8GYOlE/IMG_1045%2B%25281%2529.jpg","type":"image/jpeg","height":1001,"width":1600}},{"objectType":"photo","content":"IMG_1061.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195104698993570","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-8m3hM_5R7yM%2FTrQh5oOEi6I%2FAAAAAAABN30%2F7z8mbOL5pkY%2Fw288-h288%2FIMG_1061.jpg","type":"image/jpeg","height":120,"width":192},"fullImage":{"url":"https://lh3.googleusercontent.com/-8m3hM_5R7yM/TrQh5oOEi6I/AAAAAAABN30/7z8mbOL5pkY/IMG_1061.jpg","type":"image/jpeg","height":1000,"width":1600}},{"objectType":"photo","content":"IMG_1126.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195114005867698","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-0kQEhEOYYnk%2FTrQh6K5ALLI%2FAAAAAAABN34%2FKilij3w0Opw%2Fw288-h288%2FIMG_1126.jpg","type":"image/jpeg","height":120,"width":213},"fullImage":{"url":"https://lh5.googleusercontent.com/-0kQEhEOYYnk/TrQh6K5ALLI/AAAAAAABN34/Kilij3w0Opw/IMG_1126.jpg","type":"image/jpeg","height":900,"width":1600}}]},"crosspostSource":"oz:106189723444098348646.1336fa253c1.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:24.000Z","updated":"2011-11-04T17:33:24.339Z","id":"z13de3n52xukc3hki23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/3QuqbVFD1Jy","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/3QuqbVFD1Jy","replies":{"totalItems":41,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13de3n52xukc3hki23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":161,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13de3n52xukc3hki23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":17,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13de3n52xukc3hki23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_1126.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195114005867698","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-0kQEhEOYYnk%2FTrQh6K5ALLI%2FAAAAAAABN34%2FKilij3w0Opw%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":900,"width":1600},"fullImage":{"url":"https://lh5.googleusercontent.com/-0kQEhEOYYnk/TrQh6K5ALLI/AAAAAAABN34/Kilij3w0Opw/photo.jpg","type":"image/jpeg","height":900,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421e8ae402cb2:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:23.000Z","updated":"2011-11-04T17:33:23.240Z","id":"z13rdtlaukmdfrjlw23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/B7owDrqX2TP","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/B7owDrqX2TP","replies":{"totalItems":30,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13rdtlaukmdfrjlw23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":146,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13rdtlaukmdfrjlw23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":17,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13rdtlaukmdfrjlw23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_1061.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195104698993570","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-8m3hM_5R7yM%2FTrQh5oOEi6I%2FAAAAAAABN30%2F7z8mbOL5pkY%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":1000,"width":1600},"fullImage":{"url":"https://lh3.googleusercontent.com/-8m3hM_5R7yM/TrQh5oOEi6I/AAAAAAABN30/7z8mbOL5pkY/photo.jpg","type":"image/jpeg","height":1000,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421e683848ba2:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:21.000Z","updated":"2011-11-04T17:33:21.864Z","id":"z12btxpzqte3hfhdc23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/7m7ouURUXFL","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/7m7ouURUXFL","replies":{"totalItems":32,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12btxpzqte3hfhdc23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":226,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12btxpzqte3hfhdc23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":18,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12btxpzqte3hfhdc23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_1045 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195089866811410","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-A03KL0pHCPo%2FTrQh4w9zaBI%2FAAAAAAABN3s%2F5ZQJT8GYOlE%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":1001,"width":1600},"fullImage":{"url":"https://lh3.googleusercontent.com/-A03KL0pHCPo/TrQh4w9zaBI/AAAAAAABN3s/5ZQJT8GYOlE/photo.jpg","type":"image/jpeg","height":1001,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421e30f736812:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:18.000Z","updated":"2011-11-04T17:33:18.832Z","id":"z12cwvriurzfj5knc23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/JV12JEobJr4","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/JV12JEobJr4","replies":{"totalItems":41,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12cwvriurzfj5knc23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":185,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12cwvriurzfj5knc23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":17,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12cwvriurzfj5knc23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_1024.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195078921944082","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh6.googleusercontent.com%2F-iL57xW3xXKM%2FTrQh4IMV_BI%2FAAAAAAABN3k%2FJmTomL7LT9g%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":1067,"width":1600},"fullImage":{"url":"https://lh6.googleusercontent.com/-iL57xW3xXKM/TrQh4IMV_BI/AAAAAAABN3k/JmTomL7LT9g/photo.jpg","type":"image/jpeg","height":1067,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421e08315fc12:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:15.000Z","updated":"2011-11-04T17:33:15.072Z","id":"z12tj3vj4o3vfzaai04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/bVKGG97KVi9","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/bVKGG97KVi9","replies":{"totalItems":207,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12tj3vj4o3vfzaai04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":1064,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12tj3vj4o3vfzaai04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":439,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12tj3vj4o3vfzaai04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_0999 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195059894115554","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-C5e086kjOYA%2FTrQh3BTwXOI%2FAAAAAAABN3g%2F9n9uYze0xyk%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":1042,"width":1600},"fullImage":{"url":"https://lh5.googleusercontent.com/-C5e086kjOYA/TrQh3BTwXOI/AAAAAAABN3g/9n9uYze0xyk/photo.jpg","type":"image/jpeg","height":1042,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421dc14f05ce2:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:14.000Z","updated":"2011-11-04T17:33:14.925Z","id":"z13wgpgixlnoudtm323sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/CLjiJYdC9rf","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/CLjiJYdC9rf","replies":{"totalItems":35,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13wgpgixlnoudtm323sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":134,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13wgpgixlnoudtm323sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":11,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13wgpgixlnoudtm323sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_0682 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195054718882738","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-yvjvXNySpdY%2FTrQh2uB4k7I%2FAAAAAAABN3c%2FxtVIkszCE_Y%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":1143,"width":1600},"fullImage":{"url":"https://lh3.googleusercontent.com/-yvjvXNySpdY/TrQh2uB4k7I/AAAAAAABN3c/xtVIkszCE_Y/photo.jpg","type":"image/jpeg","height":1143,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421dae07893b2:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:33:14.000Z","updated":"2011-11-04T17:33:14.791Z","id":"z12yfdmq1lazf12gp04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RwCTJNYXMQw","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/RwCTJNYXMQw","replies":{"totalItems":24,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12yfdmq1lazf12gp04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":108,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12yfdmq1lazf12gp04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":11,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12yfdmq1lazf12gp04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_0683 (1).jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671195055117717474","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-75vSUnMiduY%2FTrQh2vg-T-I%2FAAAAAAABN3Y%2FYKgHjznQPVQ%2Fs1600%2Fphoto.jpg","type":"image/jpeg","height":900,"width":1600},"fullImage":{"url":"https://lh5.googleusercontent.com/-75vSUnMiduY/TrQh2vg-T-I/AAAAAAABN3Y/YKgHjznQPVQ/photo.jpg","type":"image/jpeg","height":900,"width":1600}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb421daf83e4fe2:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:31:47.000Z","updated":"2011-11-04T17:31:47.695Z","id":"z13affa4fxbvzneu523sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/CbidAjPMWtj","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/CbidAjPMWtj","replies":{"totalItems":12,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13affa4fxbvzneu523sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":50,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13affa4fxbvzneu523sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":3,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13affa4fxbvzneu523sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_3263.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194679289099090","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh4.googleusercontent.com%2F-UBEEurW4juU%2FTrQhg3ccs1I%2FAAAAAAABN3Q%2FPZekdFNZ080%2Fs288%2Fphoto.jpg","type":"image/jpeg","height":192,"width":288},"fullImage":{"url":"https://lh4.googleusercontent.com/-UBEEurW4juU/TrQhg3ccs1I/AAAAAAABN3Q/PZekdFNZ080/photo.jpg","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb42183771cb352:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:31:43.000Z","updated":"2011-11-04T17:31:43.729Z","id":"z132cdhpusesy1mqw04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/dtwbAuAHXnB","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/dtwbAuAHXnB","replies":{"totalItems":23,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cdhpusesy1mqw04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":112,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cdhpusesy1mqw04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":16,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cdhpusesy1mqw04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_3245.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194668146013026","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh3.googleusercontent.com%2F-89NhUFZoPSM%2FTrQhgN7us2I%2FAAAAAAABN3E%2Flql9L-y_1mU%2Fs288%2Fphoto.jpg","type":"image/jpeg","height":192,"width":288},"fullImage":{"url":"https://lh3.googleusercontent.com/-89NhUFZoPSM/TrQhgN7us2I/AAAAAAABN3E/lql9L-y_1mU/photo.jpg","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb42180deeeb362:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"2011-11-04","published":"2011-11-04T17:31:43.000Z","updated":"2011-11-04T17:31:43.703Z","id":"z12dznsauwe3sds5z04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/Z5Dd1R7HXx6","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"2011-11-04","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/Z5Dd1R7HXx6","replies":{"totalItems":32,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12dznsauwe3sds5z04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":104,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12dznsauwe3sds5z04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":25,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12dznsauwe3sds5z04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"photo","content":"IMG_3198.JPG","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353/5671194664166609474","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-foj-KvaeIZQ%2FTrQhf_G90kI%2FAAAAAAABN3A%2FVLQl2bsGl80%2Fs288%2Fphoto.jpg","type":"image/jpeg","height":192,"width":288},"fullImage":{"url":"https://lh5.googleusercontent.com/-foj-KvaeIZQ/TrQhf_G90kI/AAAAAAABN3A/VLQl2bsGl80/photo.jpg","type":"image/jpeg","height":800,"width":1200}},{"objectType":"photo-album","displayName":"2011-11-04","url":"https://plus.google.com/photos/106189723444098348646/albums/5671194658148230353"}]},"crosspostSource":"6e80d861ae:4eb4217ff1bdd242:0000000000000001","provider":{"title":"Photos"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Happy Halloween and check out our homepage doodle today. Surprisingly this one actually exists in...","published":"2011-10-31T07:40:35.000Z","updated":"2011-10-31T07:40:37.502Z","id":"z12zfjqrby30f5xsh23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/3LAb9f4csL1","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Happy Halloween and check out our homepage doodle today. <br /><br />Surprisingly this one actually exists in real life! <br /><a href=\"http://www.youtube.com/watch?v=yjG0rmOIngE\" >Google Halloween Doodle 2011 - Behind the Scenes</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/3LAb9f4csL1","replies":{"totalItems":416,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12zfjqrby30f5xsh23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":3500,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12zfjqrby30f5xsh23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":738,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12zfjqrby30f5xsh23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"article","displayName":"Google","url":"http://www.google.com"},{"objectType":"photo","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fwww.google.com%2Flogos%2F2011%2Fhalloween-2011-hp.jpg","type":"image/jpeg"},"fullImage":{"url":"http://www.google.com/logos/2011/halloween-2011-hp.jpg","type":"image/jpeg","height":163,"width":421}}]},"crosspostSource":"oz:106189723444098348646.13358e7b291.1","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Excited there is a bunch of new stuff today in Google+. Google Apps users can now easily have Goo...","published":"2011-10-27T23:10:20.000Z","updated":"2011-10-27T23:10:23.185Z","id":"z13vzfwh3oitdblrq04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/iEprKrhP7Vx","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Excited there is a bunch of new stuff today in Google+. Google Apps users can now easily have Google+!","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/iEprKrhP7Vx","replies":{"totalItems":353,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13vzfwh3oitdblrq04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":1929,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13vzfwh3oitdblrq04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":744,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13vzfwh3oitdblrq04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"article","displayName":"Official Google Blog: Google+: Popular posts, eye-catching analytics, photo fun and...","url":"http://googleblog.blogspot.com/2011/10/google-popular-posts-eye-catching.html"},{"objectType":"photo","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fwww.google.com%2Fgoogleblogs%2Fimages%2Fheaders%2Fogb_header_full.png","type":"image/jpeg"},"fullImage":{"url":"http://www.google.com/googleblogs/images/headers/ogb_header_full.png","type":"image/jpeg","height":123,"width":550}}]},"crosspostSource":"oz:106189723444098348646.133423a1810.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Woke up this morning feeling a little different. #gplushalloween Google+ Update: Add Fun to Your ...","published":"2011-10-27T19:12:46.000Z","updated":"2011-10-27T19:12:48.734Z","id":"z120jl1qxxnitjyks23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/5B6Frce6oUs","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Woke up this morning feeling a little different. #gplushalloween<br /><br /><a href=\"http://www.youtube.com/watch?v=RipLoAUUDjc\" >Google+ Update: Add Fun to Your Photos with the Creative Kit</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/5B6Frce6oUs","replies":{"totalItems":500,"selfLink":"https://www.googleapis.com/plus/v1/activities/z120jl1qxxnitjyks23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":1990,"selfLink":"https://www.googleapis.com/plus/v1/activities/z120jl1qxxnitjyks23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":407,"selfLink":"https://www.googleapis.com/plus/v1/activities/z120jl1qxxnitjyks23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"photo-album","url":"https://plus.google.com/photos/106189723444098348646/albums/5623341100234651505"},{"objectType":"photo","content":"Larry.jpg","url":"https://plus.google.com/photos/106189723444098348646/albums/5623341100234651505/5668251588381279362","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=https%3A%2F%2Flh5.googleusercontent.com%2F-GAQeLRUuI1k%2FTqmsybcChII%2FAAAAAAABNHo%2FaIZ__Id5SIA%2Fs128%2FLarry.jpg","type":"image/jpeg","height":127,"width":128},"fullImage":{"url":"https://lh5.googleusercontent.com/-GAQeLRUuI1k/TqmsybcChII/AAAAAAABNHo/aIZ__Id5SIA/Larry.jpg","type":"image/jpeg","height":417,"width":418}}]},"crosspostSource":"oz:106189723444098348646.13346cb4e63.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Sergey loves his circles! Here's Vic and Sergey at Web 2.0...as Vic says there is a lot of exciti...","published":"2011-10-20T20:52:28.000Z","updated":"2011-10-20T20:52:30.504Z","id":"z12pwhjyooqxj1eix04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/e29kUeoQuEJ","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Sergey loves his circles! Here's Vic and Sergey at Web 2.0...as Vic says there is a lot of exciting stuff coming up before the holidays. The teams at Google are really cranking!<br /><a href=\"http://www.youtube.com/watch?v=w0XS-9obKPM\" >Web 2.0 Summit: Vic Gundotra and Sergey Brin, " A Conversation with..."</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/e29kUeoQuEJ","replies":{"totalItems":348,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12pwhjyooqxj1eix04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":1691,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12pwhjyooqxj1eix04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":731,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12pwhjyooqxj1eix04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"video","displayName":"Web 2.0 Summit: Vic Gundotra and Sergey Brin, " A Conversation with..."","content":"Vic Gundotra (Google)\nSergey Brin (Google)","url":"http://www.youtube.com/v/w0XS-9obKPM&hl=en&fs=1&autoplay=1","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fytimg.googleusercontent.com%2Fvi%2Fw0XS-9obKPM%2Fdefault.jpg","type":"image/jpeg"}}]},"crosspostSource":"oz:106189723444098348646.13323186392.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"I've absolutely loved using my pre-release Galaxy Nexus phone running the new version of Android,...","published":"2011-10-19T06:35:46.000Z","updated":"2011-10-19T06:35:49.178Z","id":"z12kcbwgpzfjvn4yz04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/eKrWPrb1SV5","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"I've absolutely loved using my pre-release Galaxy Nexus phone running the new version of Android, Ice Cream Sandwich. It is truly beautiful hardware with incredible software. <br /><br />Today in Hong Kong, our partners from Samsung took the stage with Andy Rubin, and introduced the world to the Galaxy Nexus and Android 4.0, also known as Ice Cream Sandwich. Both Google and Samsung spent a lot of time getting everything right, and it really shows!<br /><br />People are at the heart of Ice Cream Sandwich with an amazing new contact manager. We focused on re-inventing sharing on mobile devices. This is what I was talking about when I recently mentioned one way to think about Google+ is that over the last quarter we shipped the +, and now we’re going to ship the Google part.<br /><br />There are ton of other features from super fast camera with amazing panorama mode and 1080p video to Voice Typing which transcribes text nearly instantly as you speak. You can even unlock your phone with just a smile. The screen is unbelievably nice and has 720p resolution and is a gigantic 4.65". <br /><br />Now that Ice Cream Sandwich is unwrapped, the first Galaxy Nexus phones will ship worldwide starting in November. Sign up to get one, you'll love it just like I do!","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/eKrWPrb1SV5","replies":{"totalItems":498,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12kcbwgpzfjvn4yz04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":5394,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12kcbwgpzfjvn4yz04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":1831,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12kcbwgpzfjvn4yz04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"article","displayName":"Galaxy Nexus","content":"Galaxy Nexus. First phone with Android 4.0, Face Unlock, Android Beam, an amazing HD screen and 4G LTE fast.","url":"http://google.com/nexus"},{"objectType":"photo","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fwww.google.com%2Fnexus%2Fimg%2Fcontent%2Fintroduction.png","type":"image/jpeg"},"fullImage":{"url":"http://www.google.com/nexus/img/content/introduction.png","type":"image/jpeg","height":485,"width":511}}]},"crosspostSource":"oz:106189723444098348646.1331ac9d4c3.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Very excited about the ice cream sandwich launch in Hong Kong next week--stay tuned for some amaz...","published":"2011-10-14T16:58:54.000Z","updated":"2011-10-14T16:58:57.609Z","id":"z13khtzjxnvcjv44j04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/QwZqbrvrcLF","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Very excited about the ice cream sandwich launch in Hong Kong next week--stay tuned for some amazing new features! And here's a cool video of the ice cream sandwich Android outside the office in Mountain View--she arrived yesterday.<br /><br />Live: YouTube.com/Android, 10/19/11, 10AM, Hong Kong Time (HKT)","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/QwZqbrvrcLF","replies":{"totalItems":478,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13khtzjxnvcjv44j04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":3409,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13khtzjxnvcjv44j04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":1270,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13khtzjxnvcjv44j04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"video","displayName":"Calling All Ice Cream Sandwich Lovers","content":"Live: YouTube.com/Android, 10/19/11, 10AM, Hong Kong Time (HKT)","url":"http://www.youtube.com/v/RX4btquQzUE&hl=en&fs=1&autoplay=1","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fytimg.googleusercontent.com%2Fvi%2FRX4btquQzUE%2Fdefault.jpg","type":"image/jpeg"}}]},"crosspostSource":"oz:106189723444098348646.133035d45ef.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"Here is my Google earnings remarks I just gave and the quote from our press release: \"We had a gr...","published":"2011-10-13T20:53:27.000Z","updated":"2011-10-13T20:53:30.156Z","id":"z13sfhbirmi1thaml23sth1xhwiehnmx104","url":"https://plus.google.com/106189723444098348646/posts/EanXz8fLwDh","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Here is my Google earnings remarks I just gave and the quote from our press release:<br /><br />"We had a great quarter,” said Larry Page, CEO of Google. “Revenue was up 33% year on year and our quarterly revenue was just short of $10 billion. Google+ is now open to everyone and we just passed the 40 million user mark. People are flocking into Google+ at an incredible rate and we are just getting started!"<br />------------<br />It’s great to be here--and thanks for taking the time to be with us today.<br /><br />When I look back over the last quarter, the word that springs to mind is “gangbusters”!<br /><br />Revenue was up 33% year on year and our quarterly revenue was just short of $10BN--not bad for a thirteen year old!<br /><br />I’m also incredibly excited about the progress we’ve made on the product side.<br /><br />Ever since taking over as CEO I have focused much of my energy on increasing Google’s velocity and execution.<br /><br />And we’re beginning to see results. Look at Google+ :<br />We had 100 features launched in 90 days--the team is really cranking<br />We had hangouts on the phone, hangouts on <a href=\"http://air--will.i.am\" >air--will.i.am</a> did a hangout from his concert in Central Park<br />You can now share circles<br />You can search Google+<br />And you can play games in Google+<br /><br />And far most exciting of all, open-sign ups … Google+ for everyone!<br /><br />Looking at the numbers for Google+, I was taken aback … I now want to announce that we’ve passed the 40M user mark Google+.<br /><br />People are flocking into Google+ at an incredible rate and we are just getting started!<br /><br />The engagement we are seeing is phenomenal too -- over 3.4BN photos have already been uploaded in Google+.<br /><br />But it’s still incredibly early days for Google+ because our goal is actually far bigger than the individual feature launches themselves.<br /><br />Our ultimate ambition is to transform the overall Google experience--making it beautifully simple, almost automagical, because we understand what you want and can deliver it instantly. <br /><br />This means baking identity and sharing into all of our products so that we build a real relationship with our users. Sharing on the web will be like sharing in real life across all your stuff. You’ll have better, more relevant search results and ads.<br /><br />Think about it this way … last quarter, we’ve shipped the +, and now we’re going to ship the Google part.<br /><br />The new visual redesign--beautiful, consistent UIs for search, news, maps, translate and lots of other features. It’s only the beginning of that process!<br /><br />Last quarter I talked about focus … and we have made great progress here too.<br /><br />To create products that really change people’s lives, that they use every day, two or three times a day, is really hard.<br /><br />So we have to make tough decisions about what to focus on, or we end up doing things that don’t have the impact that we strive for.<br /><br />Since we last spoke we’ve begun the process of shutting over 20 different products, including SideWiki, Google Pack, Google Notebook, and Fast Flip. <br /><br />And we’ll continue to simplify and streamline our products going forward.<br /><br />This prioritization is crucial if we are to really invest in the extraordinary opportunities in front of Google today. Let me give you a few examples.<br /><br />Chrome--usage is going through the roof. We have now hit over 200 million users and still growing fast. Turns out people really care about getting to the web quickly and securely, and having a whole ecosystem of apps at their fingertips. <br /><br />I am super pleased with Google Maps--it’s a favorite with our users, especially on mobile devices. In August we launched in 40 new countries--taking our total to 130 countries.<br /><br />The growth of Android is mindboggling too--over 190M devices have now been activated globally.<br /><br />I’m super excited about the soon to be released new version of Android, called Ice Cream Sandwich. That’s right, Ice Cream Sandwich. You won’t believe what we managed to get done in this release.<br /><br />We’re also seeing hugely positive revenue impact from mobile, which has grown 2.5X in the last 12 months to a run rate of over $2.5 billion.<br /><br />Generally I’ve found that high usage products will make a lot of money over time for well managed technology companies, and that’s why it’s so important to run these businesses for the long term.<br /><br />That said, we must never lose sight of the fact that today’s revenues and growth serve as the engine that funds all of our future innovation. <br /><br />People are a crucial part of Google’s long term success because great companies are no greater than the efforts and ingenuity of their employees.<br /><br />So our goal is to hire the best people at every level, and keep them at Google.<br /><br />But hiring has to be manageable if we are to balance our short and long term needs.<br /><br />You may have noticed quite substantial hiring this quarter, driven in part by a lot of university graduates. Despite this seasonal effect the total number of people we hired was about the same as last quarter. Our attrition remains low which is great, though obviously contributes to our overall headcount.<br /><br />As I’ve said previously, I continue to believe that our headcount growth is at the edge of what’s manageable.<br /><br />Let me finish by saying that we are still at the very early stages of what technology can deliver … these tools we use online will look very different in 5 years time.<br /><br />We’re building those tools now as Google+ which is why I am so excited to be here.<br /><br />So thank you. And again we had a great quarter! <br /><br /><a href=\"http://investor.google.com/earnings/2011/Q3_google_earnings.html\" >http://investor.google.com/earnings/2011/Q3_google_earnings.html</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/EanXz8fLwDh","replies":{"totalItems":481,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13sfhbirmi1thaml23sth1xhwiehnmx104/comments"},"plusoners":{"totalItems":2734,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13sfhbirmi1thaml23sth1xhwiehnmx104/people/plusoners"},"resharers":{"totalItems":876,"selfLink":"https://www.googleapis.com/plus/v1/activities/z13sfhbirmi1thaml23sth1xhwiehnmx104/people/resharers"},"attachments":[{"objectType":"article","displayName":"Google Announces Third Quarter 2011 Financial Results - Google Investor Relations","content":"Google Investor Relations. Home; News and Events; Financial Information. Quarterly Earnings. 2011; 2010; 2009; 2008; 2007; 2006; 2005; 2004. Financial Tables; SEC Filings; SEC Filings Archive; Stock I...","url":"http://investor.google.com/earnings/2011/Q3_google_earnings.html"}]},"crosspostSource":"oz:106189723444098348646.132ff0f1f51.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}},{"kind":"plus#activity","title":"If you know a 14-18 year old, have them submit a YouTube video with a cool experiment to be done ...","published":"2011-10-12T06:05:05.000Z","updated":"2011-10-12T06:05:07.036Z","id":"z132cxjxsmmxhrc4t04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/Sdmj3rr47fh","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"If you know a 14-18 year old, have them submit a YouTube video with a cool experiment to be done in space. Will be judged by some amazing folks like Stephen Hawking, and if they win it will be live streamed from the space station on YouTube! <br /><br />You can all help inspire our next generation of leaders to get excited about science and engineering and have some fun too! Thanks to our Googlers, the space agencies, and the other sponsors for doing this. And check out the video which has already been watched a million times!","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/Sdmj3rr47fh","replies":{"totalItems":281,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cxjxsmmxhrc4t04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":2177,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cxjxsmmxhrc4t04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":1446,"selfLink":"https://www.googleapis.com/plus/v1/activities/z132cxjxsmmxhrc4t04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"video","displayName":"YouTube Space Lab - What Will You Do?","content":"We're excited to announce YouTube Space Lab, launching with Lenovo and Space Adventures in cooperation with NASA, ESA and JAXA. Watch amazing space and science videos and, if you're 14 to 18 years old, submit a space experiment idea for your chance to win out-of-this-world prizes. Find out more at http://youtube.com/spacelab. Music composed by Aurotone.","url":"http://www.youtube.com/v/T41vZCadbAk&hl=en&fs=1&autoplay=1","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fytimg.googleusercontent.com%2Fvi%2FT41vZCadbAk%2Fdefault.jpg","type":"image/jpeg"}}]},"crosspostSource":"oz:106189723444098348646.132f6aad562.0","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}}]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#activity","title":"Super excited we are launching +pages today. Now everyone's favorite brands--companies, not for p...","published":"2011-11-07T18:22:23.000Z","updated":"2011-11-07T18:22:24.060Z","id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2","actor":{"id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},"verb":"post","object":{"objectType":"note","content":"Super excited we are launching +pages today. Now everyone's favorite brands--companies, not for profits--can get their page on Google+.<br /><br />Google Blog post: <br /><a href=\"http://googleblog.blogspot.com/2011/11/google-pages-connect-with-all-things.html\" >http://googleblog.blogspot.com/2011/11/google-pages-connect-with-all-things.html</a>","originalContent":"","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2","replies":{"totalItems":353,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/comments"},"plusoners":{"totalItems":2159,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/people/plusoners"},"resharers":{"totalItems":942,"selfLink":"https://www.googleapis.com/plus/v1/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/people/resharers"},"attachments":[{"objectType":"video","displayName":"Google+: Pages","url":"javascript:void(0);","image":{"url":"http://images0-focus-opensocial.googleusercontent.com/gadgets/proxy?container=focus&gadget=a&resize_h=100&url=http%3A%2F%2Fytimg.googleusercontent.com%2Fvi%2F8Ccf5GxM7vg%2Fdefault.jpg","type":"image/jpeg"}}]},"crosspostSource":"oz:106189723444098348646.1337f3fe5dd.1","provider":{"title":"Google+"},"access":{"kind":"plus#acl","items":[{"type":"public"}]}}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8lc3Sis3Fuaf8gzMcSNPZw","published":"2011-11-07T18:27:35.625Z","updated":"2011-11-07T18:27:35.625Z","actor":{"id":"101810309994958780182","displayName":"Joe Mazziliano","url":"https://plus.google.com/101810309994958780182","image":{"url":"https://lh6.googleusercontent.com/-hRRXRlG84jY/AAAAAAAAAAI/AAAAAAAAAAA/Bfaqkggz7MI/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"excellent"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8lc3Sis3Fuaf8gzMcSNPZw","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#commentFeed","nextPageToken":"20","title":"Plus Comments Feed for Super excited we ar...","updated":"2011-11-12T23:48:14.875Z","id":"tag:google.com,2010:/plus/activities/z12nyfzgsualgleop04cj35obprltdqifo40k/comments","items":[{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8lc3Sis3Fuaf8gzMcSNPZw","published":"2011-11-07T18:27:35.625Z","updated":"2011-11-07T18:27:35.625Z","actor":{"id":"101810309994958780182","displayName":"Joe Mazziliano","url":"https://plus.google.com/101810309994958780182","image":{"url":"https://lh6.googleusercontent.com/-hRRXRlG84jY/AAAAAAAAAAI/AAAAAAAAAAA/Bfaqkggz7MI/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"excellent"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8lc3Sis3Fuaf8gzMcSNPZw","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YnMqZTgFBrinRHIvnLT9Lrg","published":"2011-11-07T18:27:58.745Z","updated":"2011-11-07T18:36:45.000Z","actor":{"id":"102291835965130378165","displayName":"Ziyuan Yao","url":"https://plus.google.com/102291835965130378165","image":{"url":"https://lh4.googleusercontent.com/-gusTdn2uNi4/AAAAAAAAAAI/AAAAAAAAAAA/K6zWF28Xh20/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"I'm #2 :-)"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YnMqZTgFBrinRHIvnLT9Lrg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y53hA0_m3PIvlLveXdYO-Fg","published":"2011-11-07T18:28:17.430Z","updated":"2011-11-07T18:28:17.430Z","actor":{"id":"117862402712401640463","displayName":"vivek samaga","url":"https://plus.google.com/117862402712401640463","image":{"url":"https://lh3.googleusercontent.com/-RMVndHMFJpA/AAAAAAAAAAI/AAAAAAAAAAA/8-3vPRW6KYE/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Much needed"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y53hA0_m3PIvlLveXdYO-Fg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YVAoqRhny2Vrs5v2NSDDAwQ","published":"2011-11-07T18:28:21.894Z","updated":"2011-11-07T18:28:21.894Z","actor":{"id":"110701628121777569957","displayName":"Michael Martin","url":"https://plus.google.com/110701628121777569957","image":{"url":"https://lh6.googleusercontent.com/-JYkCoLcd69k/AAAAAAAAAAI/AAAAAAAAAAA/YdVdtktlM24/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Love it ! I already started following DC Comics !"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YVAoqRhny2Vrs5v2NSDDAwQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YMEmI_VHjkm3lLveXdYO-Fg","published":"2011-11-07T18:28:43.411Z","updated":"2011-11-07T18:28:43.411Z","actor":{"id":"101640814953672945536","displayName":"William Levins","url":"https://plus.google.com/101640814953672945536","image":{"url":"https://lh4.googleusercontent.com/-fbwKhyWpliA/AAAAAAAAAAI/AAAAAAAAAAA/q98dJ6q0z94/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"If it's released, why can't I create a page yet?"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YMEmI_VHjkm3lLveXdYO-Fg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YJUVWT7FsrDFfoxMS5ENiCw","published":"2011-11-07T18:28:53.650Z","updated":"2011-11-07T18:28:53.650Z","actor":{"id":"105610257069521074546","displayName":"Leonel Atencio","url":"https://plus.google.com/105610257069521074546","image":{"url":"https://lh5.googleusercontent.com/-K8L0pcwE2CA/AAAAAAAAAAI/AAAAAAAAAAA/0EGF4_NX9sE/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Good!!"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YJUVWT7FsrDFfoxMS5ENiCw","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8iLNslYMHBjs5v2NSDDAwQ","published":"2011-11-07T18:28:59.207Z","updated":"2011-11-07T18:28:59.207Z","actor":{"id":"116611436991464008799","displayName":"Kevin Geng","url":"https://plus.google.com/116611436991464008799","image":{"url":"https://lh3.googleusercontent.com/-nqXM5tlwvzU/AAAAAAAAAAI/AAAAAAAAAAA/3cO18AtYEWQ/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"when can we start making our own?"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Y8iLNslYMHBjs5v2NSDDAwQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Ypyzgq5CWcs_RHIvnLT9Lrg","published":"2011-11-07T18:29:20.014Z","updated":"2011-11-07T18:29:20.014Z","actor":{"id":"113933188142370557001","displayName":"J. Sperling Reich","url":"https://plus.google.com/113933188142370557001","image":{"url":"https://lh3.googleusercontent.com/-QMKkhvcUy9Y/AAAAAAAAAAI/AAAAAAAAAAA/8r8U2D9_nY8/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"When will Google+ Pages be open for everyone to use?"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Ypyzgq5CWcs_RHIvnLT9Lrg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YqezK4NSEOqPRHIvnLT9Lrg","published":"2011-11-07T18:29:23.959Z","updated":"2011-11-07T18:29:23.959Z","actor":{"id":"101581238470854458162","displayName":"Thomas Quintana","url":"https://plus.google.com/101581238470854458162","image":{"url":"https://lh6.googleusercontent.com/-7aF8EYQmD74/AAAAAAAAAAI/AAAAAAAAAAA/Dmr5d-1koA8/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Nice post! Thanks Larry!"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YqezK4NSEOqPRHIvnLT9Lrg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Yf39zVNjtHx8xhcQNTkXoeg","published":"2011-11-07T18:29:48.764Z","updated":"2011-11-07T18:29:48.764Z","actor":{"id":"116009012807412102885","displayName":"Ani Reyna","url":"https://plus.google.com/116009012807412102885","image":{"url":"https://lh3.googleusercontent.com/-jVZebaWveU4/AAAAAAAAAAI/AAAAAAAAAAA/Chh1T3TAJ40/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"yay!"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Yf39zVNjtHx8xhcQNTkXoeg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YtS4juwik4DLs5v2NSDDAwQ","published":"2011-11-07T18:30:18.191Z","updated":"2011-11-07T18:30:18.191Z","actor":{"id":"112364112059181871997","displayName":"Vishwanath Thota","url":"https://plus.google.com/112364112059181871997","image":{"url":"https://lh4.googleusercontent.com/-55riujAKx8g/AAAAAAAAAAI/AAAAAAAAAAA/GnfHqkI78XQ/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Now its really ... real life sharing"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YtS4juwik4DLs5v2NSDDAwQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YQHgK_R3SqJaLGfkUkljXiQ","published":"2011-11-07T18:30:30.594Z","updated":"2011-11-07T18:30:30.594Z","actor":{"id":"109576192007283508998","displayName":"Saadi Camcho","url":"https://plus.google.com/109576192007283508998","image":{"url":"https://lh5.googleusercontent.com/-m2uHTlE6Cxo/AAAAAAAAAAI/AAAAAAAAAAA/yNkJkBuJwik/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"I love it! Thank you Larry google+ is awesome!"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YQHgK_R3SqJaLGfkUkljXiQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YjuM6WHXm7t7s5v2NSDDAwQ","published":"2011-11-07T18:31:05.320Z","updated":"2011-11-07T18:31:05.320Z","actor":{"id":"102153079061223627983","displayName":"Matteo Luigi Riso","url":"https://plus.google.com/102153079061223627983","image":{"url":"https://lh4.googleusercontent.com/-KO9vKn1DkRQ/AAAAAAAAAAI/AAAAAAAAAAA/q0EWykgvhkQ/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"I can't wait to make one for my product :)"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YjuM6WHXm7t7s5v2NSDDAwQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YCESkrWRFNkxauF01GgorAA","published":"2011-11-07T18:31:09.439Z","updated":"2011-11-07T18:31:09.439Z","actor":{"id":"100192471166797040499","displayName":"Markus Hübner","url":"https://plus.google.com/100192471166797040499","image":{"url":"https://lh6.googleusercontent.com/-imRh6KviZz4/AAAAAAAAAAI/AAAAAAAAAAA/s2LruxTOnFk/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Any idea when <a href=\"http://plus.google.com/pages/create\" >http://plus.google.com/pages/create</a> will work for everyone?"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YCESkrWRFNkxauF01GgorAA","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Yd0sIrAGJJnzlLveXdYO-Fg","published":"2011-11-07T18:31:53.320Z","updated":"2011-11-07T18:31:53.320Z","actor":{"id":"116233982105799378538","displayName":"maria ostos","url":"https://plus.google.com/116233982105799378538","image":{"url":"https://lh4.googleusercontent.com/-Vy8oikK3MgI/AAAAAAAAAAI/AAAAAAAAAAA/AuxFWwVYKOk/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"larry page...i m great fan of you...love u...<br />and when it will launch for everyone...."},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8Yd0sIrAGJJnzlLveXdYO-Fg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YwzSXZgpUp87s5v2NSDDAwQ","published":"2011-11-07T18:32:41.561Z","updated":"2011-11-07T18:32:41.561Z","actor":{"id":"108184417428742226162","displayName":"Julio Pacheco","url":"https://plus.google.com/108184417428742226162","image":{"url":"https://lh5.googleusercontent.com/-LzH8IEZxkIs/AAAAAAAAAAI/AAAAAAAAAAA/DiwcHFGCSa8/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Nice!!!!!! "},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YwzSXZgpUp87s5v2NSDDAwQ","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YGg1X468FxoXlLveXdYO-Fg","published":"2011-11-07T18:32:44.704Z","updated":"2011-11-07T18:32:44.704Z","actor":{"id":"112901304588226965628","displayName":"Samir Saleem","url":"https://plus.google.com/112901304588226965628","image":{"url":"https://lh4.googleusercontent.com/-hhEmkyOIpcw/AAAAAAAAAAI/AAAAAAAAAAA/3Bh87rUhO88/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"The best part is that it can now become a threat to facebook as facebook earns most of its revenue from brands and if brands and companies switch to google+, then facebook is going to go down<br />See google also integrated search for Google+ pages to its core search hence a strategic win <br /><br /><br /><a href=\"http://thetechnologycafe.com/watch-out-facebook-pagesgoogle-pages-arrive-for-brands-companiesintegrates-them-into-search-video-and-pictures/\" >http://thetechnologycafe.com/watch-out-facebook-pagesgoogle-pages-arrive-for-brands-companiesintegrates-them-into-search-video-and-pictures/</a>"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YGg1X468FxoXlLveXdYO-Fg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YteM47qfeouZfoxMS5ENiCw","published":"2011-11-07T18:32:45.120Z","updated":"2011-11-07T18:32:45.120Z","actor":{"id":"112399655763420276717","displayName":"Augusto Farias","url":"https://plus.google.com/112399655763420276717","image":{"url":"https://lh6.googleusercontent.com/-g9EZVKswDmU/AAAAAAAAAAI/AAAAAAAAAAA/iWy95-SQhhI/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"\\o/"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YteM47qfeouZfoxMS5ENiCw","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YOdjwlPWiGcrlLveXdYO-Fg","published":"2011-11-07T18:32:55.126Z","updated":"2011-11-07T18:32:55.126Z","actor":{"id":"116089669698111362158","displayName":"Frej Norling","url":"https://plus.google.com/116089669698111362158","image":{"url":"https://lh5.googleusercontent.com/-RnYA6Hfpguc/AAAAAAAAAAI/AAAAAAAAAAA/PSMWN8yMNRg/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Thats funny, now everyone will add Page(s) to circles! =)"},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YOdjwlPWiGcrlLveXdYO-Fg","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]},{"kind":"plus#comment","id":"AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YaY5esfsoCpG4P1YiC9TA2A","published":"2011-11-07T18:33:24.843Z","updated":"2011-11-07T18:33:24.843Z","actor":{"id":"113275787891136344392","displayName":"Jose Ledon Jr.","url":"https://plus.google.com/113275787891136344392","image":{"url":"https://lh3.googleusercontent.com/-EMPMCZQILgI/AAAAAAAAAAI/AAAAAAAAAAA/y39fWXf-TOw/photo.jpg"}},"verb":"post","object":{"objectType":"comment","content":"Hope this post from <span class=\"proflinkWrapper\"><span class=\"proflinkPrefix\">+</span><a href=\"https://plus.google.com/106189723444098348646\" class=\"proflink\" oid=\"106189723444098348646\">Larry Page</a></span> would re-shared it by sir <span class=\"proflinkWrapper\"><span class=\"proflinkPrefix\">+</span><a href=\"https://plus.google.com/115628770376047128149\" class=\"proflink\" oid=\"115628770376047128149\">Rolly Padayao</a></span> to his <b>30 Reasons Why Google+ Is Better</b>."},"selfLink":"https://www.googleapis.com/plus/v1/comments/AKzC1gBa96muDUddAlC9XhfJ45WHNj7Ec43VFXA3zdQ3Op3Wrhx7088cas30BI8YaY5esfsoCpG4P1YiC9TA2A","inReplyTo":[{"id":"z12nyfzgsualgleop04cj35obprltdqifo40k","url":"https://plus.google.com/106189723444098348646/posts/RyiLPkRnVL2"}]}]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#peopleFeed","selfLink":"https://www.googleapis.com/plus/v1/people?query=Larry+Page&maxResults=10","title":"Plus People Search Feed","nextPageToken":"EAoaAA","items":[{"kind":"plus#person","id":"106189723444098348646","displayName":"Larry Page","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"}},{"kind":"plus#person","id":"111176035772651881663","displayName":"Larry Page","url":"https://plus.google.com/111176035772651881663","image":{"url":"https://lh4.googleusercontent.com/-AFDqJCHiTuA/AAAAAAAAAAI/AAAAAAAAAAA/kwSausqavGo/photo.jpg"}},{"kind":"plus#person","id":"103791422585544033712","displayName":"Larry Page","url":"https://plus.google.com/103791422585544033712","image":{"url":"https://lh4.googleusercontent.com/-imSq0v4_ru0/AAAAAAAAAAI/AAAAAAAAAAA/5K2K5AUfVC8/photo.jpg"}},{"kind":"plus#person","id":"112849143130349626239","displayName":"Larry Page","url":"https://plus.google.com/112849143130349626239","image":{"url":"https://lh5.googleusercontent.com/-rC_RjJcJi0E/AAAAAAAAAAI/AAAAAAAAAAA/L444DXbAwSk/photo.jpg"}},{"kind":"plus#person","id":"113779953107335822789","displayName":"Larry Page","url":"https://plus.google.com/113779953107335822789","image":{"url":"https://lh4.googleusercontent.com/-7aKW1l4vDDQ/AAAAAAAAAAI/AAAAAAAAAAA/rqErAYSyNfs/photo.jpg"}},{"kind":"plus#person","id":"116811829598044504451","displayName":"Andrew Grafton","url":"https://plus.google.com/116811829598044504451","image":{"url":"https://lh5.googleusercontent.com/-WN4JDRW-1GE/AAAAAAAAAAI/AAAAAAAAAAA/56AfF1bB4yc/photo.jpg"}},{"kind":"plus#person","id":"116664055384617761223","displayName":"Chindona Kurnia Ananda","url":"https://plus.google.com/116664055384617761223","image":{"url":"https://lh6.googleusercontent.com/-aHT1qhSZVa8/AAAAAAAAAAI/AAAAAAAAAAA/s1QJvIkYIik/photo.jpg"}},{"kind":"plus#person","id":"115910675895971250072","displayName":"PROF. AURNOB ROY","url":"https://plus.google.com/115910675895971250072","image":{"url":"https://lh3.googleusercontent.com/-ipGFx82njlg/AAAAAAAAAAI/AAAAAAAAAAA/Gl0FaP60b3w/photo.jpg"}},{"kind":"plus#person","id":"112641814042834447174","displayName":"チャイニコラス","url":"https://plus.google.com/112641814042834447174","image":{"url":"https://lh4.googleusercontent.com/-IWdDdHgCGpw/AAAAAAAAAAI/AAAAAAAAAAA/WoDz933QPTs/photo.jpg"}},{"kind":"plus#person","id":"103756592263455012235","displayName":"Elliott Ng","url":"https://plus.google.com/103756592263455012235","image":{"url":"https://lh6.googleusercontent.com/-wO3UgbILI1E/AAAAAAAAAAI/AAAAAAAAAAA/uEaS1Fh8O_E/photo.jpg"}}]}
|
@@ -0,0 +1 @@
|
|
1
|
+
{"kind":"plus#person","id":"106189723444098348646","displayName":"Larry Page","gender":"male","aboutMe":"","relationshipStatus":"married","url":"https://plus.google.com/106189723444098348646","image":{"url":"https://lh3.googleusercontent.com/-Y86IN-vEObo/AAAAAAAAAAI/AAAAAAAAAAA/xOvnPfMX1XU/photo.jpg"},"urls":[{"value":"https://plus.google.com/106189723444098348646","type":"profile"},{"value":"https://www.googleapis.com/plus/v1/people/106189723444098348646","type":"json"}],"organizations":[{"name":"Google","title":"CEO","type":"work"}]}
|
data/spec/gplus/activity_spec.rb
CHANGED
@@ -1,9 +1,74 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
1
3
|
describe Gplus::Client do
|
4
|
+
before do
|
5
|
+
@api_key = '1234567'
|
6
|
+
@client = Gplus::Client.new(:api_key => @api_key)
|
7
|
+
end
|
8
|
+
|
2
9
|
describe '.get_activity' do
|
3
|
-
|
10
|
+
it "should return an activity" do
|
11
|
+
activity, activity_json = fixture('activity.json')
|
12
|
+
|
13
|
+
stub_api_request(:get, "activities/#{activity_json['id']}").to_return(:body => activity)
|
14
|
+
@client.get_activity(activity_json['id']).should == activity_json
|
15
|
+
end
|
4
16
|
end
|
5
17
|
|
6
18
|
describe '.list_activities' do
|
7
|
-
|
19
|
+
before do
|
20
|
+
@person, @person_json = fixture('person.json')
|
21
|
+
@activities, @activities_json = fixture('activities.json')
|
22
|
+
end
|
23
|
+
|
24
|
+
it "should return a list of a person's public activities" do
|
25
|
+
stub_api_request(:get, "people/#{@person_json['id']}/activities/public").to_return(:body => @activities)
|
26
|
+
@client.list_activities(@person_json['id']).should == @activities_json
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should accept a :maxResults argument" do
|
30
|
+
@results = 2
|
31
|
+
|
32
|
+
stub_api_request(:get, "people/#{@person_json['id']}/activities/public", :maxResults => @results.to_s).to_return(:body => @activities)
|
33
|
+
@client.list_activities(@person_json['id'], :maxResults => @results).should == @activities_json
|
34
|
+
end
|
35
|
+
|
36
|
+
it "should accept a :pageToken argument" do
|
37
|
+
@page = '1234567'
|
38
|
+
|
39
|
+
stub_api_request(:get, "people/#{@person_json['id']}/activities/public", :pageToken => @page).to_return(:body => @activities)
|
40
|
+
@client.list_activities(@person_json['id'], :pageToken => @page).should == @activities_json
|
41
|
+
end
|
42
|
+
end
|
43
|
+
|
44
|
+
describe '.search_activities' do
|
45
|
+
before do
|
46
|
+
@activity, @activity_json = fixture('activity.json')
|
47
|
+
@activities, @activities_json = fixture('activities.json')
|
48
|
+
end
|
49
|
+
|
50
|
+
it "should list all public activities" do
|
51
|
+
stub_api_request(:get, "activities").to_return(:body => @activities)
|
52
|
+
@client.search_activities.should == @activities_json
|
53
|
+
end
|
54
|
+
|
55
|
+
it "should accept a :query argument" do
|
56
|
+
stub_api_request(:get, "activities", :query => @activity_json['title']).to_return(:body => @activity)
|
57
|
+
@client.search_activities(:query => @activity_json['title']).should == @activity_json
|
58
|
+
end
|
59
|
+
|
60
|
+
it "should accept a :maxResults argument" do
|
61
|
+
@results = 2
|
62
|
+
|
63
|
+
stub_api_request(:get, "activities", :maxResults => @results.to_s).to_return(:body => @activities)
|
64
|
+
@client.search_activities(:maxResults => @results).should == @activities_json
|
65
|
+
end
|
66
|
+
|
67
|
+
it "should accept a :pageToken argument" do
|
68
|
+
@page = '1234567'
|
69
|
+
|
70
|
+
stub_api_request(:get, "activities", :pageToken => @page).to_return(:body => @activities)
|
71
|
+
@client.search_activities(:pageToken => @page).should == @activities_json
|
72
|
+
end
|
8
73
|
end
|
9
74
|
end
|
data/spec/gplus/client_spec.rb
CHANGED
data/spec/gplus/comment_spec.rb
CHANGED
@@ -1,9 +1,43 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
1
3
|
describe Gplus::Client do
|
4
|
+
before do
|
5
|
+
@api_key = '1234567'
|
6
|
+
@client = Gplus::Client.new(:api_key => @api_key)
|
7
|
+
end
|
8
|
+
|
2
9
|
describe '.get_comment' do
|
3
|
-
|
10
|
+
it "should return a comment" do
|
11
|
+
comment, comment_json = fixture('comment.json')
|
12
|
+
|
13
|
+
stub_api_request(:get, "comments/#{comment_json['id']}").to_return(:body => comment)
|
14
|
+
@client.get_comment(comment_json['id']).should == comment_json
|
15
|
+
end
|
4
16
|
end
|
5
17
|
|
6
18
|
describe '.list_comments' do
|
7
|
-
|
19
|
+
before do
|
20
|
+
@activity, @activity_json = fixture('activity.json')
|
21
|
+
@comments, @comments_json = fixture('comments.json')
|
22
|
+
end
|
23
|
+
|
24
|
+
it "should return a list of an activity's public comments" do
|
25
|
+
stub_api_request(:get, "activities/#{@activity_json['id']}/comments").to_return(:body => @comments)
|
26
|
+
@client.list_comments(@activity_json['id']).should == @comments_json
|
27
|
+
end
|
28
|
+
|
29
|
+
it "should accept a :maxResults argument" do
|
30
|
+
@results = 2
|
31
|
+
|
32
|
+
stub_api_request(:get, "activities/#{@activity_json['id']}/comments", :maxResults => @results.to_s).to_return(:body => @comments)
|
33
|
+
@client.list_comments(@activity_json['id'], :maxResults => @results).should == @comments_json
|
34
|
+
end
|
35
|
+
|
36
|
+
it "should accept a :pageToken argument" do
|
37
|
+
@page = '1234567'
|
38
|
+
|
39
|
+
stub_api_request(:get, "activities/#{@activity_json['id']}/comments", :pageToken => @page).to_return(:body => @comments)
|
40
|
+
@client.list_comments(@activity_json['id'], :pageToken => @page).should == @comments_json
|
41
|
+
end
|
8
42
|
end
|
9
43
|
end
|
data/spec/gplus/person_spec.rb
CHANGED
@@ -1,5 +1,47 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
1
3
|
describe Gplus::Client do
|
4
|
+
before do
|
5
|
+
@api_key = '1234567'
|
6
|
+
@client = Gplus::Client.new(:api_key => @api_key)
|
7
|
+
|
8
|
+
@person, @person_json = fixture('person.json')
|
9
|
+
end
|
10
|
+
|
2
11
|
describe '.get_person' do
|
3
|
-
|
12
|
+
it "should return a person's profile" do
|
13
|
+
stub_api_request(:get, "people/#{@person_json['id']}").to_return(:body => @person)
|
14
|
+
@client.get_person(@person_json['id']).should == @person_json
|
15
|
+
end
|
16
|
+
end
|
17
|
+
|
18
|
+
describe '.search_people' do
|
19
|
+
before do
|
20
|
+
@people, @people_json = fixture('people.json')
|
21
|
+
end
|
22
|
+
|
23
|
+
it "should list all public profiles" do
|
24
|
+
stub_api_request(:get, "people").to_return(:body => @people)
|
25
|
+
@client.search_people.should == @people_json
|
26
|
+
end
|
27
|
+
|
28
|
+
it "should accept a :query argument" do
|
29
|
+
stub_api_request(:get, "people", :query => @person_json['displayName']).to_return(:body => @person)
|
30
|
+
@client.search_people(:query => @person_json['displayName']).should == @person_json
|
31
|
+
end
|
32
|
+
|
33
|
+
it "should accept a :maxResults argument" do
|
34
|
+
@results = 2
|
35
|
+
|
36
|
+
stub_api_request(:get, "people", :maxResults => @results.to_s).to_return(:body => @people)
|
37
|
+
@client.search_people(:maxResults => @results).should == @people_json
|
38
|
+
end
|
39
|
+
|
40
|
+
it "should accept a :pageToken argument" do
|
41
|
+
@page = '1234567'
|
42
|
+
|
43
|
+
stub_api_request(:get, "people", :pageToken => @page).to_return(:body => @people)
|
44
|
+
@client.search_people(:pageToken => @page).should == @people_json
|
45
|
+
end
|
4
46
|
end
|
5
47
|
end
|
data/spec/spec_helper.rb
CHANGED
@@ -1,2 +1,17 @@
|
|
1
|
-
require '
|
1
|
+
require 'simplecov'
|
2
|
+
SimpleCov.start
|
3
|
+
|
2
4
|
require 'rspec'
|
5
|
+
require 'webmock/rspec'
|
6
|
+
|
7
|
+
require 'gplus'
|
8
|
+
|
9
|
+
def fixture(file)
|
10
|
+
text = File.read(File.join(File.expand_path('../fixtures', __FILE__), file))
|
11
|
+
[text, MultiJson.decode(text)]
|
12
|
+
end
|
13
|
+
|
14
|
+
def stub_api_request(method, path, query = {})
|
15
|
+
query[:key] = @api_key unless @api_key.blank?
|
16
|
+
stub_request(method, "#{Gplus::Client::DEFAULT_ENDPOINT}/#{Gplus::Client::DEFAULT_API_VERSION}/#{path}").with(:query => query)
|
17
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: gplus
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.
|
4
|
+
version: 1.0.0
|
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: 2011-
|
12
|
+
date: 2011-11-13 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: multi_json
|
16
|
-
requirement: &
|
16
|
+
requirement: &10383940 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: '1.0'
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *10383940
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: oauth2
|
27
|
-
requirement: &
|
27
|
+
requirement: &10383220 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: '0.5'
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *10383220
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rspec
|
38
|
-
requirement: &
|
38
|
+
requirement: &10382380 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ! '>='
|
@@ -43,7 +43,29 @@ dependencies:
|
|
43
43
|
version: '0'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *10382380
|
47
|
+
- !ruby/object:Gem::Dependency
|
48
|
+
name: webmock
|
49
|
+
requirement: &10381120 !ruby/object:Gem::Requirement
|
50
|
+
none: false
|
51
|
+
requirements:
|
52
|
+
- - ! '>='
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: '0'
|
55
|
+
type: :development
|
56
|
+
prerelease: false
|
57
|
+
version_requirements: *10381120
|
58
|
+
- !ruby/object:Gem::Dependency
|
59
|
+
name: simplecov
|
60
|
+
requirement: &10380260 !ruby/object:Gem::Requirement
|
61
|
+
none: false
|
62
|
+
requirements:
|
63
|
+
- - ! '>='
|
64
|
+
- !ruby/object:Gem::Version
|
65
|
+
version: '0'
|
66
|
+
type: :development
|
67
|
+
prerelease: false
|
68
|
+
version_requirements: *10380260
|
47
69
|
description: A complete implementation of the Google plus API for Ruby
|
48
70
|
email:
|
49
71
|
- nicholas@2suggestions.com.au
|
@@ -63,6 +85,12 @@ files:
|
|
63
85
|
- lib/gplus/comment.rb
|
64
86
|
- lib/gplus/person.rb
|
65
87
|
- lib/gplus/version.rb
|
88
|
+
- spec/fixtures/activities.json
|
89
|
+
- spec/fixtures/activity.json
|
90
|
+
- spec/fixtures/comment.json
|
91
|
+
- spec/fixtures/comments.json
|
92
|
+
- spec/fixtures/people.json
|
93
|
+
- spec/fixtures/person.json
|
66
94
|
- spec/gplus/activity_spec.rb
|
67
95
|
- spec/gplus/client_spec.rb
|
68
96
|
- spec/gplus/comment_spec.rb
|
@@ -89,7 +117,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
89
117
|
version: 1.3.6
|
90
118
|
requirements: []
|
91
119
|
rubyforge_project:
|
92
|
-
rubygems_version: 1.8.
|
120
|
+
rubygems_version: 1.8.11
|
93
121
|
signing_key:
|
94
122
|
specification_version: 3
|
95
123
|
summary: Google+ API implementation with support for authorized requests, People,
|