« Free!の聖地巡礼にかかる交通費を再度試算 | メイン | 銀魂 完結編 万事屋よ永遠なれ »

SendLater サーバ側プログラムの一部改良

Send Laterは、Android及びiPhoneから、未来の日時を指定してメールを送信するアプリです。
従来では、例えば23:00送信と設定していたら、23:00に送信 (失敗したら23:05に再トライ)する実装にしていましたが、22:55 (設定日時の5分前)に送信するよう改良しています。

【iPhoneでの利用】

AppStoreでの配布を止めてからAndroid版のみ提供していましたが、
利便性向上のためWeb版を提供します。(iPhoneからの利用を想定)
下記QRコードからアクセスしてください。




【ソースコード】

Send Laterは、オープンソースとして開発しています。リポジトリは、下記SourceForgeのプロジェクトページから辿ることができます。

http://sourceforge.jp/projects/slcp/simple/

どうしても毎時0分にはサーバの処理が輻輳するため、それを避ける措置です。





【1時間後の日時(mysqlフォーマット)を取得するPHPコード】
シンプルですが、現在の日時をdate()関数で取得し、時間を+1しています。


// 1時間後の日時を取得
$nextHour = date("H");
if($nextHour < 24){
$nextHour = $nextHour + 1;
}

$timeNextHour = date("Y-m-d ").$nextHour.":00:00";

print($timeNextHour);







【PHPによるメール送信】

メールの送信には、mb_send_mail()関数を使用しています。
(この処理をcronから呼び出す)


// カレントの言語を日本語に設定する
mb_language("ja");
// 内部文字エンコードを設定する
mb_internal_encoding("UTF-8");

if (mb_send_mail("宛先アドレス" "タイトル", "メール本文", "From: "."送信元メールアドレス")) {
echo "メールが送信されました。";
}

トラックバック

このエントリーのトラックバックURL:
http://www.ddhost.jp/mt/mt-tb.cgi/787

About

2013年11月26日 00:01に投稿されたエントリーのページです。

ひとつ前の投稿は「Free!の聖地巡礼にかかる交通費を再度試算」です。

次の投稿は「銀魂 完結編 万事屋よ永遠なれ」です。

他にも多くのエントリーがあります。メインページアーカイブページも見てください。