Plagger使ってLastFMの最近聴いた音楽をTwitterに投稿する

概要: LastFM2Twitter


最近聴いた音楽をTwitterに投稿したい!それPla!と言うことでPlaggerでやってみた。

必要なプラグインは、

  • Subscription::Config
  • Filter::Rule
  • Publish::Twitter

の三つ。で、Publish::Twitterに関しては少し改造していて、 サブルーチンpublish_entry

sub publish_entry {
my($self, $context, $args) = @_;
my $body = 'NowPlaying - ' . $args->{'entry'}->title . ' .';
$context->log(info => "Updating Twitter status to '$body'");
$self->{twitter}->update($body);
}

のように変更、モジュール名を Plagger::Plugin::Publish::TwitterFM としてる。

で、設定は、

LastFM2Twitter.yaml

plugins:
- module: Subscription::Config
config:
feed:
- url: http://ws.audioscrobbler.com/1.0/user/nyarla-net/recenttracks.rss
- module: Filter::Rule
rule:
- module: RecentN
count: 1
- module: Publish::TwitterFM
config:
username: Twitter-UserName
password: Twitter-Password

こんな感じ。globalについては省略。購読するFeedに関しては、 LastFM -> Tool -> データ・フィードの最近聴いたトラックのRSSフィードを使用。 Filter::Ruleで最初の1エントリしてるのが多分ポイント。 Publish::Twitter改造してるので若干邪道のような気がする。

曲が変わるたびにPlagger動かそうかとも考えたんだけど、ちょっと鬱陶しそうなので、 それはやめた。

diffとれとか言われそう。でもやり方がよく分かってない。

追記:2007-04-07T16:39:00+09:00 さっき気づいたけど、どうも日本語がうまく投稿できてない。

なんでなんだろ。ちょっと調べてみる。

#FIXME

nyarlaが大体

Scrapbox でコメントや意見を書く