y-matsui::weblog

電子楽器、音楽、コンピュータ、プログラミング、雑感。面倒くさいオヤジの独り言

並列送信に向けて仕様を変更

SMTPサーバ単位で、キュー(およびログ、バックアップ)を作成するように変えた。
→リスト生成時のディレクトリはテンポラリ
→メッセージを保存したタイミングでSMTPサーバごとのディレクトリ配下のリスト用ディレクトリにコピー
→メッセージ用データもSMTPサーバごとのディレクトリにコピー

※これで選択したSMTPサーバでメルマガを送信できる。

SMTPサーバ設定一覧から、選択したSMTPサーバに割り当てたキューをフラッシュできるようにした。
→利用停止設定にしているSMTPサーバでは送信させない
SMTPサーバを選択しないでキューのフラッシュを実行した場合には、利用停止になっていないSMTPサーバのIDが若い順に利用する

※これで定期タスクとは別に即時送信が可能になる。

・POPアカウント単位でメールの即時受信ができるようにした
→巡回受信とは別に、WebインタフェースからPOPアカウントを選択して即時受信できる
→POPアカウントを指定しない場合はすべてのPOPアカウントを受信
→allオプションで全POPアカウントのメールを巡回受信

送信エラーとなったキューの再送信機能も必要。
さらに、複数SMTPを使って送信できる以上は、あるSMTPサーバで送信エラーがあった分を、別のSMTPリカバリーできるような仕組みも欲しい。