mail2entryと格闘

2003/9/8 am8:45追記:
* 大事なことが抜けていました・・・
* すてきなコードを公開してくださったあひるさん、sekiさん、mail2entry.cgiの詳細な設定方法を公開されているWEB YATAIさん、本当にありがとうございます。

SL-C760のカスタマイズが一段落し軌道に乗ったので、先日の防災訓練で課題となっていた、メールによるサイトの更新を実現すべく作業に入っていました。そんなわけでここ数日更新がさっぱりでした。すいません。でも成果たくさんです。(私的には)

NX80Vでの写真、今度はスナップ(?)用途です」を見て頂いた方はおわかりかと思いますが、私が担当している「湖西災害ボランティア」のサイトの基本構成はほとんどMobile-bozuと同じです。あちらもMovableTypeを使用して、更新作業がなるべく簡単に出来るようにしているんです。
それでも東海地震発生時ともなれば、使用できる通信回線も限られ、おそらく発生当初しばらくの間、良くて携帯電話程度の回線しか確保できないと思われます(現時点では衛星電話の使用を想定しています)。そんな状態だと、MovableTypeの管理画面ですらも重いんです。被災時における外部への情報伝達が最大の使命だったりもするので、それでは困ったちゃんです。

そこでメールを送るだけで情報を書き込めたら便利だ、ということになるわけですが、これがなかなか大変でした。MovableTypeでメールによるエントリーの追加(いわゆるMoblog)を可能にするプログラムのひとつに、mail2entry.cgi(あひるさん作)があります(WEB-YATAIさんの設置方法解説ページ)。

設置方法に従ってやればすぐ動くかと思いきや、ホスティング会社のサーバーには必要なPerlのライブラリが無いとかでエラーでまくり。telnet出来るのを幸いに自分で勝手にインストールして何とかクリアしたら、今度は原因のはっきりしないエラーに遭遇。ちょっとした表記の違いが許容されないみたいでした。Perlのバージョンが低いからかなぁ。もー、大変。Perl初心者にはきついです。2日がたち、コードを全部理解するぐらいになってようやく設置が出来ました。ふーっ。いい勉強になります。

でもこのcgiだと、カテゴリやauthor(投稿者)の指定が出来ません。そこでWebをさまよったところ、Netry BlogさんのところでNetry Moblogというのが公開されてました(sekiさん作)。mail2entry.cgiと同じくメールからエントリーするためのcgiなのですが、こちらではAuthorやカテゴリもいじっています。私のやりたいこととは違っていたのですが、コードは大変参考になりました。それをもとにしてmail2entry.cgiを改造して、これもまた2日がかりでまともに動くようになりました。MovableTypeのソースを読んだりしてようやくでした。(読んだソースとは全然関係ないところでつまづいてたんですけどね。)なんだか英語をいっぱい読んだ気がします・・・
あー
眠い。
仕上がったの、ついさっきなんです。なんとかauthorとカテゴリーを指定してエントリーすることが出来るようになりました。
それにしても、これだけうだうだ書いても全然身のないエントリーですね、コレは。普通こういうときは改造したソースを公開するものなのですが、その方が何かのお役に立てるかもしれないんですが、元のmail2entry.cgiのライセンスが不明なので躊躇してます。メールしてみようかなぁ。
一番長いこと引っかかってたのが、「エントリーするためのメールを2通以上処理すると、データベース内ではちゃんとカテゴリーが設定出来ているのに、Indexページに(つまりトップページに)反映されない」というものでした。たぶんカテゴリーの設定に時間がかかってて、indexページをリビルドするタイミングに間に合わないんじゃないかと思います。サーバー環境によっては問題のない場合もあるんでしょうね。
indexのリビルドの部分だけ別cgiにして、コードの最後にsystem関数で呼び出したらうまくいきました。
Perl素人にしては、まともに使えそうなものが出来たと自画自賛です(笑)
Perlが何なのかが分からない普通の方にはさっぱり理解できない内容で申し訳ないです(汗)
2 件のコメント

このブログの人気の投稿

トランシーバーアプリzelloにオススメの片耳イヤホンマイク

買っちゃった ASUSのスティックPC VivoStick TS10

家族カードの暗証番号が分からない