NAME
Google::Plus - simple interface to Google+
SYNOPSIS
use Google::Plus;
use v5.10.1;
my $plus = Google::Plus->new(key => $your_gplus_api_key);
# get a person's profile
my $user_id = '112708775709583792684';
my $person = $plus->person($user_id);
say "Name: ", $person->{displayName};
# get this person's activities
my $activities = $plus->activities($user_id);
while ($activities->{nextPageToken}) {
my $next = $activities->{nextPageToken};
for my $item (@{$activities->{items}}) {
...;
}
$activities = $plus->activities($user_id, $next);
}
# get a specific activity
my $post = 'z13uxtsawqqwwbcjt04cdhsxcnfyir44xeg';
my $act = $plus->activity($post);
say "Activity: ", $act->{title};
DESCRIPTION
This module lets you access Google+ people profiles and activities from Perl. Currently, only access to public data is supported; authenticated requests for me
and other private data will follow in a future release.
This module is alpha software, use at your own risk.
ATTRIBUTES
key
my $key = $plus->key;
my $key = $plus->key('xxxxNEWKEYxxxx');
Google+ API key, used for retrieving content. Usually set using "new".
ua
my $ua = $plus->ua;
my $ua = $plus->ua(Mojo::UserAgent->new);
User agent object that retrieves JSON from the Google+ API endpoint. Defaults to a Mojo::UserAgent object. This object will use HTTP/HTTPS proxies when available (via HTTP_PROXY
and HTTPS_PROXY
environment variables.)
METHODS
Google::Plus implements the following methods:
new
my $plus = Google::Plus->new(key => $google_plus_api_key);
Construct a new Google::Plus object. Needs a valid Google+ API key, which you can get at https://code.google.com/apis/console.
person
my $person = $plus->person('userId');
my $person = $plus->person('userId', 'fields');
Get a Google+ person's public profile. Returns a Mojo::JSON decoded hashref describing the person's profile in Portable Contacts format. If fields
is given, limit response to the specified fields; see the Partial Responses section of https://developers.google.com/+/api.
activities
my $acts = $plus->activities('userId');
my $acts = $plus->activities('userId', 'collection');
my $acts = $plus->activities('userId', 'collection', nextPage');
my $acts = $plus->activities('userId', 'collection', nextPage', 'fields');
Get person's list of public activities, returning a Mojo::JSON decoded hashref describing the person's activities in Activity Streams format; this method also accepts requesting partial responses if fields
is given. If collection
is given, use that as the collection of activities to list; the default is to list public
activities instead. If a nextPage
token is given, this method retrieves the next page of activities this person has.
activity
my $post = $plus->activity('activityId')
my $post = $plus->activity('activityId', fields');
Get a specific activity/post. Returns a Mojo::JSON decoded hashref describing the activity in Activity Streams format. If fields
is given, limit response to specified fields.
SEE ALSO
DEVELOPMENT
This project is hosted on Github, at https://github.com/zakame/perl-google-plus. Post issues to CPAN RT.
AUTHOR
Zak B. Elep, zakame@cpan.org
COPYRIGHT AND LICENSE
This software is Copyright (c) 2011, Zak B. Elep.
This is free software, you can redistribute it and/or modify it under the same terms as Perl language system itself.