Net::GitHubを使ってGithubからeventsを取得するサンプルを書いた。
cpanmでモジュールのインストール。
$ cpanm http://search.cpan.org/CPAN/authors/id/F/FA/FAYLAND/Net-GitHub-0.46.tar.gz
モジュールはGitHubのエイチが大文字であることに注意。
GithubDev/get_events.pl at master · satojkovic/GithubDev
#!perl use strict; use warnings; use Net::GitHub::V3; use Config::Pit; my $conf = pit_get("api.gihtub.com", require => { "username" => "username on github", "password" => "password on github" }); my $gh = Net::GitHub::V3->new( login => $conf->{username}, pass => $conf->{password}, ); my $event = $gh->event(); my @events = $event->user_public_events($conf->{username}); foreach my $ev (@events) { print "----\n"; foreach my $key (keys $ev) { if( ref($ev->{$key}) ne 'HASH' ) { print "$key: $ev->{$key}\n"; } } }
"repo", "payload", "actor"は複雑になりそうなので表示していない。特定のイベントを取得してTwitterにポストなども出来そう(Watch始めた等)。