ドキュメント本文へスキップ
ナレッジベース

予約送信

いま書いて、相手が起きている時間に届ける。

詳細

  • 新規メールにも返信にも使える。
  • 予約したメッセージはカレンダーに表示され、送信前に編集、移動、取り消しができる。これには作成画面から予約したものも含まれるようになった。以前はコードから送信したメールだけが対象だった。作成画面には独自の予約機能があり、メッセージを将来の予定を持つメッセージとして書き込まずにキューへ保持していたため、カレンダーには一覧に出すものも動かすものもなかった。現在は両方が1つの経路を通るので、作成画面から予約したメッセージも、他のものと同じ場所から開き、書き直し、別の日に移し、呼び戻せる。
  • 予約は1年先まで指定できる。12時間以内であればキューが保持し、それより先のものは定期処理が範囲内に繰り上げる。再試行による二重送信を防ぐ仕組みは、どこから送られたものでも同じである。遅延送信されるメッセージはすべて永続的な記録を持ち、送出時に compare-and-swap でその記録を確保する。そのため、プラットフォームが明示的に許容しているキューの再配信が起きても、確保できる対象がなく、何も起こらない。1年を超える予約は受け付けずに拒否する。依存する鍵が送信前に期限切れになり、メッセージが消えたまま送信済みとして報告されてしまうからである。