携帯サイト空メール処理プログラム(PHP)について
PHPでできた携帯サイトの空メール処理のプログラムのカスタマイズをしています。
空メールが送られてきたらkaramail.phpが起動し、送信者のメールアドレスを取得して、メッセージの自動送信をするところまでできているのですが、それにメールタイトル(Subject)の取得も付け加えようとしています。
メールアドレスの取得と同様の方法でできるとは思うのですが、文字コード別の処理などもあるので、複雑になると推測しています。
ネットなどで調べると「空メール処理プログラムは様々な場合を想定しなければならないので大変複雑で手間がかかる」とのことです。
携帯機種による違い、送信元のメーラーによる違い、その他いろいろあるのだと思うのですが、あくまでも推測で「これとこれに関する処理が必要」といった具体的な情報が見つからずに困っています。
サンプルプログラムにしても、メールアドレスを取得するものはネットや書籍に出ているのですが、タイトルを取得するものは出てきません。
普段はPCサイトの開発を行っているので、携帯事情がよくわからず、調べても出てくる情報がとても少ないです。
おそらく実務で開発した経験がある人だけが知っていることなのだと思います。
携帯空メールでタイトルを取得する場合、どのような処理が必要なのか。詳しい方、実務で開発している方がいらしたら教えて下さい。
送信されてきたメールのヘッダーを調べる環境は作ってあります。
サーバーはさくらインターネット、karamail.php上のメールアドレス取得スクリプトは下記です。
-------------------------------------
#!/usr/local/bin/php -q
<?php
// main
{
$stdin = fopen("php://stdin", "r");
if (!$stdin) {
exit();
}
$email = "";
while ($line = fgets($stdin)) {
$line = trim($line);
if (!$line || $email){
break;
}
// 送信元メールアドレスの取得
if (eregi("^from:", $line)){
$email = getEmail($line);
}
}
// メールアドレス取得関数
function getEmail($line)
{
if (eregi("(.*)\<(.*)\>", $line, $tmp)){
$from = $tmp[2];
}
return strtolower(trim($from));
}
-------------------------------------
補足
調べてみたんですが、サイト自体が英語でわかりませんでした・・・ メールサーバにはAr Go Soft Mail Serverを使っているのですが、 それでも空メール実装(メールがサーバに届いた時点でプログラムを動かす)できるのでしょうか?