Предотвращение зацикливания писем

В SMP есть возможность настроить автоматическую отправку почтовых оповещений, что может привести к зацикливанию писем.

Зацикливание писем — это ситуация, когда входящее в SMP автоматическое письмо, например, автоответ от сервера, провоцирует создание ответного исходящего автоматического письма из SMP, например, о добавлении комментария к заявке. Такие письма циклически создаются в бесконечном количестве, пока не будет прервана автоотправка одного из таких писем.

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

Способы предотвращения зацикливания переписки

  • Настроить черные списки для фильтрации входящей почты, см. Фильтрация входящей почты по адресу отправителя, теме и содержимому письма. Черные списки.

    Рекомендуем включить в черный список тем известные автоответы почтовых серверов:

    • "Unable to deliver message";
    • "Delivery is delayed".
  • Ограничить максимальное количество комментариев, которые могут быть добавлены к объекту, в конфигурационном файле dbaccess.properties (параметр bo.maxCommentsAmount).

  • Доработать скрипты обработки почты и действия по событиям.

    Пример:

    Copy
    def autoHeader = message.getHeaders().get('Auto-Submitted') // получаем заголовок письма с названием Auto-Submitted
    if (autoHeader != null && autoHeader != 'no') // проверяем, что заголовок отличен от значения 'no'.
    {
    result.reject(api.mail.OTHER_REJECT_REASON, 'Письмо отклонено из-за заголовков автоответа')
    throw new ScriptError(ErrorType.REJECT, result.rejectMessage)
    }
  • Настроить мониторинг, чтобы своевременно обнаруживать увеличение очереди оповещений и скриптов.

    Рекомендуется обратиться за консультацией в службу поддержки NAUMEN.