それpla

「サイトが更新されたら通知して欲しい」
それ Plagger でやりゃいいんじゃね?
「いくつかのサイトの更新された情報まとめてメールで投げて欲しい」
それ Plagger でやりゃいいんじゃね?
「情報まとめて blog にアップしたい」
それ Plagger でやりゃいいんじゃね?
「ピザ注文したい」
それ Plagger でやりゃいいんじゃね?
「下水詰まった」
それ Plagger でやりゃいいんじゃね?

略して それplaPlagger。 ここしばらくあれこれ苦労したけど、ようやくいい感じに動くようになってくれた。

いまのところ mixi からマイミク日記の更新分を一括して gmail に送信してるのと、あちこちのニュースサイトの更新情報をサイト毎のメールにして、これもまた gmail に送信してる。 まぁこれだけと言えばこれだけなんだけど、gmail という共通したインタフェースで更新情報が一括して閲覧できるのが楽でいい感じ。 特に mixi とか全部を1つのメールにまとめてるから、いちいちクリックして移動する手間なくて物凄く楽。

今のところ RSS とかニュースの収集がもともとの目的だったし、ピザの注文まで手を出すつもりはないけど、youtube 動画の収集変換とか、新刊書籍の情報をiPodにとかいろいろあるみたいだし、そこらへんにも手を出してみようと思う。

とりあえず、rss 用の config.yamlmixi 用の config.yaml

global:
 assets_path: /home/nao/bin/plagger/assets
 timezone: Asia/Tokyo
# ログレベル設定
 log:
    level: debug
# キャッシュディレクトリ設定 $HOME>
 cache: 
    base: /home/nao/bin/plagger

plugins:
# 取得するサイトとか設定
  - module: Subscription::Config
    config:
      feed:
        - http://www.st.ryukoku.ac.jp/~kjm/security/antenna/index.rdf
        - http://workhorse.cocolog-nifty.com/blog/index.rdf
        - http://www.ideaxidea.com/index.xml
        - http://itpro.nikkeibp.co.jp/rss/ITpro.rdf
        - http://itpro.nikkeibp.co.jp/rss/oss.rdf

# RSS などから全文取得
  - module: Filter::EntryFullText
# リンク先も抽出
#    config:
#      store_html_on_failure: 1

# 相対リンクを絶対リンクに変換
  - module: Filter::ResolveRelativeLink

  - module: Filter::Rule
    rule:
# 更新されたものだけを送信
     module: Deduped
     compare_body: 1

#  - module: Subscription::HatenaRSS
#    config:
#      username: username

# Send HTML email to your Gmail account using external SMTP server
  - module: Publish::Gmail
    config:
      mailto: address@gmail.com
      mailfrom: address@gmail.com
      mailroute:
       via: smtp_tls
       host: smtp.gmail.com:587
       username: address@gmail.com
       password: password

mixi

global:
 assets_path: /home/nao/bin/plagger/assets
 timezone: Asia/Tokyo
 log:
    level: debug
 cache: 
    base: /home/nao/bin/plagger

plugins:
  - module: CustomFeed::Mixi
    config:
     email: adress@example.com
     password: password
     fetch_body: 1
     show_icon: 1
     feed_type:
#       - RecentComment
       - FriendDiary
       - Message
#       - Log

  - module: Filter::ResolveRelativeLink

  - module: Filter::Rule
    rule:
     module: Deduped
     compare_body: 1

  - module: Publish::Gmail
    config:
      mailto: address@gmail.com
      mailfrom: address@gmail.com
      mailroute:
       via: smtp_tls
       host: smtp.gmail.com:587
       username: address@gmail.com
       password: password