Kentaro Kuribayashi's blog

Software Engineering, Management, Books, and Daily Journal.

Plagger で Fortune of the Day

先日追加された CustomFeed::Script を使って、fortune の結果をスクリプトで加工したものを Plagger のフィードにして、Gmail なりなんなりに publish するという小ネタ。fortune ってのは、格言みたいなのを表示するプログラムです。cron で朝イチに携帯電話のメールアドレスにでも送信するようにするといいかも。
英語のメッセージじゃつまんないという向きには、たとえば「(^^)v3: おまけ(fortuneデータファイル)」にて配布されている日本語 fortune データを入れるといいかも。あるいは、映画・スターウォーズの名台詞の fortune データなんてのもあるみたい。
f:id:antipop:20061010024136p:image
fortune.pl

#!/usr/bin/env perl

use strict;
use warnings;
use YAML::Syck;

my $fortune = qx(fortune);
my ($title, $author) = $fortune =~ m|^\s*(.+?)(?:\s+(?:-+\s*(.+?))?\s*)$|ims;

print YAML::Syck::Dump({
    title => 'Fortune of the Day',
    entry => [
        {
            title  => $title,
            author => $author || 'anonymous',
            date   => scalar localtime,
        },
    ],
});

fortune.yaml

plugins:
  - module: Subscription::Config
    config:
      feed:
        - script:/home/kentaro/wd/plagger-kentarok/scripts/fortune.pl
  - module: CustomFeed::Script
  - module: Publish::Gmail
    config:
      mailto: to@example.com
      mailfrom: from@example.com
      mailroute:
        via: smtp
        host: localhost