Использование hMailServer для проверки электронных писем, отправленных из приложения - PullRequest
0 голосов
/ 05 октября 2018

У меня есть веб-приложение на Java, которое отправляет уведомления по электронной почте пользователям-клиентам в различных сценариях.Содержимое, расписание и т. Д. Определяются администраторами системы.

Я указал приложение на локальный экземпляр hMailServer в моей тестовой среде, теперь я хочу настроить это такчто все получаемые ею электронные письма перенаправляются на набор адресов электронной почты и блокируются для отправки реальным получателям.

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

1 Ответ

0 голосов
/ 05 октября 2018

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

Sub EditSubject(oMessage)
    oMessage.subject = "[TEST MESSAGE - IGNORE] " & oMessage.subject
    oMessage.save
End Sub

Это облегчает написание условий для правил позже, и, если электронное письмоесли его отправить, то он, по крайней мере, скажет, что это тест.

Затем я настроил Маршрут, который нацелен на реальный почтовый сервер компании (просто упоминаемый как SMTPSERVER).У меня есть эта настройка для отправки только по определенным адресам, на случай, если что-нибудь выйдет за рамки правил.
Когда я впервые настроил это, я просто установил маршрут с доменом company.com, но, похоже, это былосрабатывает раньше моих правил и вызывает проблемы.В итоге я просто назвал это bounce.

Затем я добавил следующие правила:

  1. Редактировать и переслать
    Этоимеет условие, что тема письма не содержит мою строку [TEST MESSAGE - IGNORE], это гарантирует, что мы не будем запускать это правило для новых перенаправленных сообщений.
    Затем запускаются следующие действия:

    • Запустить функцию для вызова вышеуказанного сценария EditSubject
    • Переслать электронную почту (повторяется столько раз, сколько вам нужно для каждого адреса, на который вы хотите настроить таргетинг),
    • Удалить электронную почту
    • Остановить обработку правила
      Эти последние 2 просто останавливают все, что происходит с исходным сообщением.
  2. Reroute
    Это условие, при котором тема сообщения ДОЛЖНА содержать [TEST MESSAGE - IGNORE], поэтому мы запускаем это правило только для переадресованных сообщений.
    Это вызывает Отправка с использованием маршрута Действие и нацеливание на маршрут bounce.

ThКонечным результатом является то, что всякий раз, когда один из моих администраторов настраивает новое электронное письмо в тестируемом приложении, оно отправляется на этот ретранслятор hMailServer.
Почтовый сервер редактирует тему, добавляя префикс «test», создает копиив своей очереди для пересылки моим установленным получателям, а затем отбрасывает оригинал.
Новые копии собираются и передаются (по маршруту) на действительный почтовый сервер компании и доставляются.

электронные письма, которые вы получаете в конце, отображаются в Outlook с пометкой «Кому», «CC» и т. д., на которых отображаются исходные получатели.

...