October 11, 2007
昨日 Jaiku を Google が買収したとかで、Jaiku がちょっと人気になってたんですが、その影響かわからないですが、Jaiku の私に対して 24 時間の間で 80 人以上の方から add されました。
私の場合、基本的にあんまり自分から add はせず、「他の人から add されたらこちらからも add し返す」というポリシーで利用しているのですが、(時々ウザかったら remove したりしつつ) ふと気がついたら百数人とかいう状況でした。
で、何やかんや今まで add されたら、イチイチブラウザで Your Followers のページ開いて、あの遷移がイマイチな画面でポチポチと Add リンクを押したりしてたんですが、昨日はさすがに add されまくったおかげで途中から段々とウザくなりました。
途中から「基本、add されたらし返すから、自動でいいじゃん」とか思いはじめたので、こんな感じで自動 add するようにしました。
/home/nipotan/bin/jaiku-autoadd.pl
あとは Jaiku の登録アドレスを nipotan-jaiku@example.com みたいにしておけば、メール本文から screen name を拾ってきて、自動的に add するようになります。
多分、これが動いている限りは私を add したら、メチャっ早で add し返しますが、早いからと言ってずっと Jaiku ばっかり見てるニートだとか勘違されると困ります。
ちなみに、国内滞在説が濃厚な miyagawa さんが、とある IRC チャンネルで
※ あくまで、ドキュメントを見る限りであって、コマンドが利用出来る範囲の詳細は未確認。
ただ、どの URL も、QUERY_STRING にあなたの username と、あなたの API Key を、
ちなみにこの方法は自分で色々試した結果気付いただけなので、Jaiku 側で仕様が変更になった場合はこの動作は保証出来ません。
とりあえず、私みたいに面倒だと思っている人は、こんな方法でしばらくはラク出来ると思います。
私の場合、基本的にあんまり自分から add はせず、「他の人から add されたらこちらからも add し返す」というポリシーで利用しているのですが、(時々ウザかったら remove したりしつつ) ふと気がついたら百数人とかいう状況でした。
で、何やかんや今まで add されたら、イチイチブラウザで Your Followers のページ開いて、あの遷移がイマイチな画面でポチポチと Add リンクを押したりしてたんですが、昨日はさすがに add されまくったおかげで途中から段々とウザくなりました。
途中から「基本、add されたらし返すから、自動でいいじゃん」とか思いはじめたので、こんな感じで自動 add するようにしました。
/home/nipotan/bin/jaiku-autoadd.pl
#!/usr/local/bin/perl
use strict;
use LWP::UserAgent;
use URI;
use constant USERNAME => 'username';
use constant API_KEY => 'your_api_key';
my $message;
{
local $/ = undef;
$message = <STDIN>;
}
my($user_page, $screen_name) = $message =~ m{^(http://(\w+?)\.jaiku\.com)$}m;
exit 0 unless defined $user_page; # New comment?
my $page_uri = URI->new("$user_page/");
$page_uri->query_form(
user => USERNAME,
personal_key => API_KEY,
);
my $ua = LWP::UserAgent->new;
my $response = $ua->get($page_uri->as_string);
exit 0 unless $response->is_success;
my($url) =
$response->content =~ m{<a href="([^"]+)">\+\s+Add\s+$screen_name\s};
exit 0 unless $url;
$url =~ s/&/&/g;
my $add_uri = URI->new($url);
$add_uri->query_form(
user => USERNAME,
personal_key => API_KEY,
$add_uri->query_form,
);
$ua->get($add_uri->as_string);
exit 0;
こんなん作っておいて、
% chmod +x ~/bin/jaiku-autoadd.pl % echo '| /home/nipotan/bin/jaiku-autoadd.pl' > ~/.qmail-jaiku % echo ./Maildir/ >> ~/.qmail-jaikuとかしておきました。
あとは Jaiku の登録アドレスを nipotan-jaiku@example.com みたいにしておけば、メール本文から screen name を拾ってきて、自動的に add するようになります。
多分、これが動いている限りは私を add したら、メチャっ早で add し返しますが、早いからと言ってずっと Jaiku ばっかり見てるニートだとか勘違されると困ります。
ちなみに、国内滞在説が濃厚な miyagawa さんが、とある IRC チャンネルで
15:26:27 <miyagawa_> jaikuのユーザ追加は follow usernameでできるぽいと言っていたのですが、とりあえず Net::Jaiku を利用したりして、API 経由で message の更新をしたり、web インターフェース経由での message 更新をしたりしたのですが、どうも API や web からは follow コマンドは動かないらしく、あくまで IM と SMS (Short Message Service) 経由じゃないとダメなようです。
※ あくまで、ドキュメントを見る限りであって、コマンドが利用出来る範囲の詳細は未確認。
ただ、どの URL も、QUERY_STRING にあなたの username と、あなたの API Key を、
user=username&personal_key=your_api_keyこのようなパラメータにして送ってあげることによって、フォームで認証をしていない session でもログイン状態になるらしく、add する時の URL に、このパラメータをつけてあげることによって、WWW::Mechanize 等を利用したフォームログインをしなくとも、自分でログインして add した扱いに出来るようです。
ちなみにこの方法は自分で色々試した結果気付いただけなので、Jaiku 側で仕様が変更になった場合はこの動作は保証出来ません。
とりあえず、私みたいに面倒だと思っている人は、こんな方法でしばらくはラク出来ると思います。