Bulknews::Subtech RSSフィード

2006/10/06 (金)

[Plagger] Publish::iCal 18:09  [Plagger] Publish::iCal - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Publish::iCal - Bulknews::Subtech

http://plagger.org/trac/browser/trunk/plagger/lib/Plagger/Plugin/Publish/iCal.pm

↓ をやりたいがために、Publish::iCal をコミットした。kentaroたんがつくった http://antipop.gs/tmp/plagger/iCal.pm.txt をベースにして、Event API などはいれてないシンプルなもの。

フィードの date が 00:00 なら全日イベントにするとか、いろいろリファクタしてあります。



[Plagger] Domain 失効情報を RSS/iCal に 17:22  [Plagger] Domain 失効情報を RSS/iCal に - Bulknews::Subtech を含むブックマーク はてなブックマーク -  [Plagger] Domain 失効情報を RSS/iCal に - Bulknews::Subtech

ドメイン失効のアラートに気付きにくいという話題。ドメイン管理者が、更新期限が迫っていることをRSS配信すると嬉しいかもと思いました。「たまにしか更新されないけど見落としたくない」情報を管理するのにRSSリーダーって向いてますよね。

それPla

plugins:
  - module: Subscription::Config
    config:
      feed:
        - script:/home/miyagawa/tmp/domain-expire.pl
  - module: CustomFeed::Script
  - module: Publish::Feed
    config:
      dir: /home/miyagawa/public_html
      filename: domains.rss
      format: RSS

さっそく CustomFeed::Script つかった。CustomFeed::DomainExpire つくろうとしたけど Subscription でどうマッピングさせるとかメンドウだったのでこっちのほうがいいね。

domain-expire.pl はこんなの。

use strict;
use warnings;
use Net::Domain::ExpireDate;
use YAML;

my @domains = (
    'bulknews.net',
    'plagger.org',
    # ...
);

my $output = {
    title => "Expire dates for my domains",
    entry => [],
};

for my $domain (@domains) {
    my $expires = expire_date($domain);
    push @{$output->{entry}}, {
        title => $domain,
        date  => "$expires",
    };
}

print YAML::Dump $output;

せっかくだから RSS だけじゃなくて iCal にしてしまえ。

  - module: Publish::iCal
    config:
      dir: /home/miyagawa/public_html
      filename: domain.ics

f:id:miyagawa:20061006172104g:image

サーバにリスト突っ込んで 30boxes にインポートしておこう。