Perlでメールを受け取る

id:eiji8pou:20050118:1106034460の続き
http://homepage3.nifty.com/hippo2000/perltips/rcvmail.htmを参考にする。
ヘッダーをいじって、独自ヘッダーにセッションIDを忍ばせるのが自分にもユーザーにも認証が楽かも。

  • バナーが表示された時、内部でメールチェックプログラムが起動する。
  • メールチェックを行い、メールがなければそのまま終了。メールがあった場合は、下記工程をメールの数だけ繰り返す。
    • ヘッダーを見て、メールアドレスとセッションIDを調べて認証する。
    • 日本語化したサブジェクトの先頭二文字(4バイト)をコマンドとみなし、残りを引数とみなす。
    • コマンドは日本語(漢字)なのを、ハッシュを使ってアルファベットの内部コマンドに変換。変換できないコマンドは不正なコマンドとみなす。
    • その後、コマンドに引数を与えて実行。
    • 途中経過も含み結果は全て記録し、最終的にユーザーに向けて返信する。この時、セッションIDを書き換えるかも。
    • 不正コマンドメールは、もしかしたら人間が人間に問い合わせしたものかも知れないので、人間宛に転送。
    • メールの受信時刻、ユーザー、認証結果、コマンドとその引数、その結果はログとして記録。

こんなところかのー。