携帯対応メーリングリストの構築メモ
自宅サーバを開局した当初から、fmlを使った仲間内のMLを運用している。
1年前からは、少年野球の指導者間で連絡を行うための携帯電話対応MLと、保護者への練習日程お知らせ用メールニュース(こちらも携帯対応)もfmlで配信している。
今回、地元の公民館活動のために「体育委員」の連絡用MLを新設したので、ついでにfmlの設定もメモしておくことにする。
1.メーリングリストhogehogeを作る
# su fml
$ /usr/local/fml/makefml newml hogehoge
※hogehogeはML名
2.エイリアスの設定
$ su root
# cat /var/spool/ml/hogehoge/aliases >> /etc/aliases
/etc/aliasesに追加したエイリアスの
hogehoge-admin: fml
owner-hogehoge: fml
owner-hogehoge-ctl: fml
の"fml"を常時メールチェックをしているユーザ名に変更しておくと良い。
3.携帯電話対応MLの設定
/var/spool/ml/hogehoge/conifig.phの一番最後に、以下の設定をしておくと携帯各社の端末に対応することができる。
# YOU CAN EDIT MANUALLY AFTER HERE.$START_HOOK = q{
$Envelope{'Body'} = "Owner Address <". $From_address .">\n\n". $Envelope{'Body'};
};$HEADER_ADD_HOOK = q{
&DELETE_FIELD('Received');
&DELETE_FIELD('X-Mail-Count');
&DELETE_FIELD('X-ML-Info');
&DELETE_FIELD('X-MLServer');
&DELETE_FIELD('List-Id');
&DELETE_FIELD('List-Software');
&DELETE_FIELD('List-Post');
&DELETE_FIELD('List-Owner');
&DELETE_FIELD('List-Help');
&DELETE_FIELD('List-Unsubscribe');
};$SMTP_OPEN_HOOK = q{
$Envelope{'fh:from:'} = $MAIL_LIST;
$Envelope{'fh:reply-to:'} = $MAIL_LIST;
};1;
最初のSTART_HOOKは、メール本文に送信者の個人アドレスを付加する設定。
次のHEADER_ADD_HOOKは、不要なヘッダ情報を削除する設定。
最後のSMTP_OPEN_HOOKは、fromフィールドとreply-toフィールドを両方とも送信者のアドレスからMLのアドレスに強制的に書き換える設定である。
特に最後の設定は重要で、vodafoneなどはfromフィールドのアドレスに返信される設定になっているため、このような必要がある。(START_HOOKの設定は、fromフィールドを書き換えているための苦肉の策である。)
4.その他
config.phに、
$SUBJECT_TAG_TYPE = "[:]";
$BRACKET = "Hogehoge";
$SUBJECT_FORM_LONG_ID = 3;
という設定を行うと、各メール件名の先頭に、
[Hogehoge:001] xxxxxxxxx
というふうに連番が自動的に付加される。
MLへのユーザーの登録は、ユーザfmlになって、
$ /usr/local/fml/makefml add hogehoge xxx@xxx.xxx
とする。
テスト送信をいくつか行ったあとで件名の連番をリセットしたいときは、
$ rm /var/spool/ml/hogehoge/seq
$ cd /var/sppol/ml/hogehoge/spool
$ rm *
とする。
