- - PR -
メールを受け取ってプログラムを実行するには
1
| 投稿者 | 投稿内容 | ||||||||
|---|---|---|---|---|---|---|---|---|---|
|
投稿日時: 2004-04-09 09:54
おせわになります、しろくまです。
現在 /etc/mail/aliases に以下のように指定し ----- prog-test: "|/etc/mail/prog-test.sh" ----- prog-test にメールが届いたとき、prog-test.sh という名前のプログラムを実行するようにしています。 その中で /usr/j #!/bin/sh XFILE=/var/tmp/prog-test.$$ cat /dev/null > $XFILE while read LINE do echo "$LINE" >> $XFILE done /usr/java/j2sdk1.4.0_03/bin/java -classpath /usr/java/j2sdkee1.3.1/lib/j2ee.jar TestPG $XFILE ----- のようにファイルで受け取り処理を行なっているのですが 直接(?)標準入力からメールを受け取ることが出来るのでしょうか。 また、メール添付ファイルは受け取ることが出来るのでしょうか。 ご存知の方がいらっしゃいましたらお願い致します。 | ||||||||
|
投稿日時: 2004-04-09 11:33
メールを受け取ってプログラムを実行する、という
ことだけでいうと、JakartaプロジェクトのJamesというのを 使えば楽に出来ると思います。 本文はもちろん、添付ファイルも取れますし、返信を 送ることも出来ます。 | ||||||||
|
投稿日時: 2004-04-09 12:28
Javaの標準入力は System.in を使います。 メールの添付ファイルは受け取れます。というか、ヘッダ、本文、添付は 特に分離されません。で、ここでJavaMailを使えば添付ファイルを分離できる と思います。 | ||||||||
|
投稿日時: 2004-04-09 13:53
回答ありがとうございます。
>JakartaプロジェクトのJamesというのを >使えば楽に出来ると思います。 こんなのがあったんですね、今度テストしてみたいと思います。 現在 postfix-2.0.13 を使用していますが単にメールサーバーとして見た場合に Jamesの性能、使い勝手はどんな感じなのでしょうか。 | ||||||||
|
投稿日時: 2004-04-09 13:59
Javaではなくシェルの記述になってしまうようですが /usr/java/j2sdk1.4.0_03/bin/java -classpath /usr/java/j2sdkee1.3.1/lib/j2ee.jar TestPG < /dev/null のようになるのでしょうか。もしくは、何も渡さず /usr/java/j2sdk1.4.0_03/bin/java -classpath /usr/java/j2sdkee1.3.1/lib/j2ee.jar TestPG のままで良いのでしょうか。 | ||||||||
|
投稿日時: 2004-04-09 15:30
つい最近、Jamesを使ってメールを受け取ったら その内容を掲示板に書き込むというプログラムを作成しました。 Mailetという機構を使えばビックリするくらい簡単にできました。 趣味で作成したので実用的かはわかりませんが、 Javaでプログラミングするなら選択肢に入るかもしれません。 (Jamesについての大体の情報はネット上から入手できると思います) | ||||||||
|
投稿日時: 2004-04-09 18:56
なにも渡さなくてよいです。 つまり、次のようになります。 #!/bin/sh /usr/java/j2sdk1.4.0_03/bin/java -classpath /usr/java/j2sdkee1.3.1/lib/j2ee.jar TestPG たとえば、こういうコードの場合。
こういう風にして、標準入力から読み込めることを確認できます。 $ echo "hello world" | ./t.sh hello world END. | ||||||||
1
