1

Что было бы хорошей стратегией для доставки почты в определенное время, например, в 20:00:00, при этом гарантируя, что она не будет доставлена даже на секунду раньше.

Я пытаюсь подать заявление куда-нибудь. Доступно только несколько мест, и они выбирают в зависимости от порядка получения электронных писем заявителя после открытия регистрации. Письма, которые приходят даже на секунду раньше, игнорируются.

Я знаю о плагинах, которые могут отправлять электронную почту в определенное время. Но мне интересно, есть ли другие (лучшие) возможности. Можно ли установить в письме заголовок, содержащий время? Как можно сгладить процесс доставки SMTP? и т.п.

1 ответ1

7

Ты не можешь

Из-за того, как работает электронная почта, это абсолютно невозможно.

Ваш почтовый клиент доставит сообщение на ваш сервер, который затем передаст сообщение на другой сервер и т.д., Пока, наконец, сообщение не будет передано на целевой сервер. Даже в этом случае почтовый клиент целевого пользователя должен получить и просмотреть сообщение.

Из-за этой цепочки невозможно гарантировать, что сообщение будет доставлено в конечную систему с какой-либо степенью точности, а также, что является « конечной » системой? Сервер или ваш почтовый клиент?

Фактически, вся система включает в себя повторные попытки, что позволяет любой из ссылок потерпеть неудачу и сообщение застревает на сервере на неопределенный период времени.

Наконец, как упоминал Мокубай в комментариях ... время - сложная тема. Все часы работают с разной скоростью, и хотя многие системы используют NTP в наши дни, у них все еще есть недостатки - например, что, если сообщение было доставлено в 20:00:00 и 999999 микросекунд ... вы его включили?

Помимо проблем с синхронизацией, у вас возникают проблемы с доверием, как только вы решите использовать метки времени из других систем.


Точка зрения Мокубая об использовании « Приложения открыты!сообщение решит вашу проблему, потому что принимающая система передала вам свое состояние, на которое вы затем можете отреагировать.

Вы не можете отправить сообщение до того, как откроется окно, потому что вы получили уведомление об открытии окна (что потребовало некоторого времени, чтобы добраться до вас).


Если окно открыто только в течение короткого периода времени или если есть « гонка », чтобы получить первое сообщение, то я бы предположил, что электронная почта не является подходящим инструментом для работы.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .