MovableTypeにメールで記事を投稿する(MailPack)

| コメント(0) | トラックバック(0)
無料のブログサービスだと、Seesaaとかlivedoorブログとか、携帯電話からの
メールをそのままブログ記事に反映させる機能をサポートしているものもあるが、
MTだと初期状態のままではこの機能は使えない。

そこでおすすめするのが、スカイアークシステムさんが開発した、MTプラグインの
一つである「MailPack」。
詳しくはこちら→ http://www.skyarc.co.jp/engineerblog/entry/4022.html

MTの個人無償ライセンス利用者に限り、こちらも無償でダウンロードできる。
(バージョンは1.1に限る)
また、プロ用で「MailPackPro」というのもあるらしいが、こちらは有償。
ただproじゃなくても、個人レベルでモブログする程度であれば、全く問題ないし、
Seesaaとかにも負けないくらい多機能なので、よっぽどのことがなければこれで
十分事足りると思う。


このプラグインを使うには以下のperlモジュールが必要なので、予めインストール
しておく。

・Net::POP3
・File::Basename
・File::Spec
・MIME-tools

SSLを利用する場合はさらに下記が必要。

・Mail::POP3Client
・IO::Socket::SSL

FCとかだと、yumから直接おとせるものもあるが、CPANに行けば全て揃っているので、
コマンド叩くのが面倒なら、全てブラウザからダウンロードしてmakeinstallした
ほうが早いかもしれない。


ちなみにCPAN用RPMのインストールの仕方と、perlモジュールインストール方法は以下。

コマンドラインからroot権限にて、
# yum -y install perl-ExtUtils-MakeMaker (cpan2rpmに必要なExtUtils::MakeMakerインストール)
   ↓
# yum -y install cpan2rpm (cpan2rpmインストール)
   ↓
※fedora10の場合
# yum -y install rpmdevtools ; rpmdev-setuptree (rpmbuildディレクトリ作成)
   ↓
何かperlモジュールをインストールしたい場合、
# cpan2rpm --no-sign --install File::Spec(File::Specパッケージをインストールする場合)


モジュールの準備ができたら、冒頭のURLからMailPack本体をダウンロード・解凍し、
MTのpluginsディレクトリ内に設置し、さらにmailpack.cgiの実行権限を755に変更。


次に、投稿専用のメールアカウントを作成しておく。
これは、GmailでもYahooメールでも、POP接続できるメールボックスであれば
何でも構わない。
自営サーバの場合は、ユーザを追加しておくだけで大抵のLinuxディストリビューション
なら勝手にメールボックスが作られるはず。

このプラグインは、指定時間になるとこの指定された受信メールBOXにPOPで
接続して、メールBOXからメールを削除しメール内容を記事としてMTに投稿する。

なので、投稿専用にしておかないと、投稿したくもない受信メールが勝手に記事として
投稿されてしまうので注意。


次に管理者権限でエディタを立ち上げ、/etc/cron.d/ 内に新規ファイルを作成し、

*/10 * * * * root cd (MTのメインディレクトリのパス); ./tools/run-periodic-tasks

と記述し「mt-task」とか適当に名前付けて保存。
(この場合は、10分おきにタスク起動→メール送信から早くて10分後にブログ記事に反映。)


その後MTにログインすると、DBのアップデートを尋ねられるので、「OK」。
   ↓
ログイン後、システムメニューに「メール投稿設定」という項目が追加されている。

「投稿先メールアドレスの追加」から各種設定を行なう。

ごっちゃになりやすいが、
「投稿先のメールアドレスを入力してください」の欄には、先ほど作った
投稿専用のメールアドレスを入力。
「メールアドレスのユーザ名を入力してください」の欄には、たいてい前者と同じか、@から前の部分を入力する。
(要は、メールソフトの設定でいうところの、POPサーバ接続ユーザ名)


続いて、「新規作成」→「ユーザ」で、メール投稿専用のユーザを作成。
(既存のユーザの設定を変更して行なうことも出きるが、おすすめしない。)

名前などは適当に決めてよいが、「電子メール」の項目は、「メールを送信する
送信元のメールアドレス」を設定する。
(携帯から送るのであれば、その携帯のメールアドレス)
※このプラグインは、送信元メールアドレスを見て、記事の投稿を行なえる
権限を持つユーザかどうかを判断している。


最後に、追加したユーザに「権限」の設定から、ユーザまたはライターなどの
権限を付与すれば設定完了。



試しに先ほど作成した投稿専用のメールアドレス宛に、メールを送ってみよう。

10分後に指定したブログに、メールの内容が記事として投稿されていれば成功だ。

うまくいかない場合は以下の理由が考えられる。

・メールの送信元アドレスがMTのユーザの電子メールと違う。
・MTのユーザに記事を投稿する権限がない。
・投稿専用アドレスのPOP接続ユーザ名・パスワードが間違っている。
・cronの設定が間違っている。
・cronデーモンが起動していない。
など。

MTシステムメニューの「ツール」→「ログ」を参照すれば大抵の原因は
わかるはず。

トラックバック(0)

トラックバックURL: http://www.igreks.jp/blog/mt-tb.cgi/70

コメントする