Windows+ActivePerlにPlaggerを入れるの巻

なかなか手を出せなかったPlaggerに手を出してみた。

まるごとPerl! Vol.1で紹介されていたページ(しげふみメモ:Windowsで Plagger 準備#1 ActivePerlインストール)から、さらに便利なページができていた(しげふみメモ:Windowsで簡単にPlaggerをインストールする方法)ので、ppmを使ってインストールすることにしました。

ppmのリポジトリが最新のActivePerlにも対応した(Charsbar::Note - PPM 4.x対応しました)らしいので、こちらを利用することに。

細かい手順を書くつもりが無かったので、詳しく覚えていませんが、とりあえずインストールしては実行して、エラーが出たら足りない分をインストールして実行…を繰り返して、ようやく空のconfig.yamlが実行できた。

あとで思えば、ここまでで道のりの半分くらいですね。

次の段階であるrss2email.yamlですが、これが問題でした。
本に載っているソースはこんな感じ。

1
2
3
4
5
6
7
8
9
plugins:
  - module: Subscription::Config
    config:
      feed:
        - http://blog.bulknews.net/mt/index.rdf

  - module: Publish::Gmail
    config:
      mailto: ユーザー名@gmail.com

これで、http://blog.bulknews.net/mt/index.rdfが取得されて、メールが送信される…はずだったのですが、うまくいきません。
そういえば、勝手に「sendmailとか使うんだろう」とか思っていたのですが、よく考えてみるとsendmailなんてインストールしてないし、そもそも使っているのかもわからない。
ということは、メールを送る手段が無い、ということで。

で、まあ本にも書いてあるとおり、Publish::Gmailの設定を細かく見ていくことに。
いくつか見てまわった結果、Publish::Gmailの設定(というか、設定しかないわけだが)は以下のような感じで次の段階へ進むことができた。
まあ、Gmailを使って、Gmail宛に送信する、という感じですね。

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
plugins:
  - module: Subscription::Config
    config:
      feed:
        - http://blog.bulknews.net/mt/index.rdf

  - module: Publish::Gmail
    config:
      mailto: ユーザー名@gmail.com
      mailfrom: ユーザー名@gmail.com
      mailroute:
        via: smtp_tls
        host: smtp.gmail.com:587
        username: ユーザー名@gmail.com
        password: パスワード

こうなった時に、ssleay32.dllがどうとか、libxmlがどうとか、いろいろとエラーが出たので、またこれも調べたところ、dllの配布場所を見つけた。
zlatkovic.com - Libxmlの右側にあるメニューからバイナリのディレクトリを見ることができるので、そこから、iconv、libxml2、opensslをダウンロードして、中身のdllファイルを全てplagger.batと同じ場所にコピーしてやる。

そうすると、ようやく完成。
自分から自分宛のメールが届きました。

しかし、設定ファイルであるyamlを少し書くだけでこういうことができると、プログラムというよりはソフトウェアという感じです。
使い甲斐がありそうですね。

comments powered by Disqus
Hugo で構築されています。
テーマ StackJimmy によって設計されています。