メールを受信したら、それをトリガーとしてPHPプログラムを起動させて返信するという処理を行いたいです。
色々調べて実装してみたが、どうやら宛先指定がうまくできていないのか、iphoneなどで検証してもメールが返ってきません。
特定のメールアカウントhoge@hoge.comにメールが届いたら、なんらかのPHPプログラムが起動するように設定する。というところは、PEARのmimeDecodeというものを使っています。
サーバーはさくらのレンタルサーバー。
以下メールを処理するプログラムです。
PHP
1require '/home/アカウント名/www/pear/PEAR/Mail/mimeDecode.php'; 2 3 mb_internal_encoding("UTF-8"); 4 mb_language("japanese"); 5 6 //メールソースを標準入力から読み込み 7 $source = file_get_contents("php://stdin"); 8 if(!$source) { 9 exit(); // 読み込み失敗 10 } 11 12 //メール解析 13 $params['include_bodies'] = true; 14 $params['decode_bodies'] = true; 15 $params['decode_headers'] = true; 16 $decoder = new Mail_mimeDecode($source); 17 $structure = $decoder->decode($params); 18 $from = mb_convert_encoding(mb_decode_mimeheader($structure->headers['from']), 19 mb_internal_encoding(), "UTF-8"); 20 $body = mb_convert_encoding($structure->body, 21 mb_internal_encoding(), "UTF-8"); 22 23 //メール返信 24 $to = $from; 25 $title = "メールテスト"; 26 $send = "From: hoge@hoge.com"; 27 $body = $body; 28 mb_send_mail($to, $title, $body, $send);
このように記述してみましたが、メールを送信しても返信がない状態です。(メールサーバーにはメールが受信できています。)
また、$fromのところに適当にメールアドレスを打ち込むと、そのメールアドレス先には届くので、$fromの取得がうまくできていないのかなあと思っています。
ご教授頂きたいと思います。
宜しくお願い致します。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。