Пользовательское сообщение об отказе II
-
Привет
[всем]
, Этот вопрос уже задавали ранее. Однако предложенное решение, похоже, не работает.
[) Если действие «bounce» запускается через фильтр сообщений, в отклоненном сообщении по умолчанию появляется следующий текст:
«554 5.0.0 < #5.0.0 smtp; 5.x.0 — Сообщение отклонено администратором (попытки доставки: 0)». Как можно настроить текст? Например:
«554 5.0.0 < #5.0.0 smtp; 5.x.0 — Сообщение отклонено из-за нарушения политики, политика № 123>». Я попробовал следующее:- Создал текстовый ресурс уведомления
об отклонении «CustomBounce»* Создал профиль отклонения «CustomBounce» и выбрал текстовый ресурс «CustomBounce» в качестве шаблона
уведомления.* Создал фильтр сообщений с действиями «bounce-profile("CustomBounce");» и «bounce;» Я по-прежнему получаю уведомление по умолчанию, а не текст из шаблона «CustomBounce». Как я могу обеспечить, чтобы действия отклонения в фильтрах сообщений не выводили текст по умолчанию в отклонении, а скорее настраиваемое, значимое сообщение?
Спасибо,
Стефан
- Создал текстовый ресурс уведомления
-
Оказывается, это известная проблема с фильтрами сообщений AsyncOS: bounce-profile + bounce в фильтрах некорректно применяют ваш настраиваемый текст отскока — они без предупреждения возвращаются к шаблону по умолчанию. Обходной путь: используйте notify вместо bounce
Хотя bounce не может применять настраиваемое сообщение при использовании в фильтрах, вы можете воспроизвести аналогичное поведение с помощью комбинации notify и фильтра сообщений: Добавьте пользовательский заголовок или тег в фильтр: apache
Копировать
Редактировать
if (<условие фильтра>) {
insert-header('X-Custom-Bounce', 'нарушение политики № 123');
notify('$EnvelopeFrom', '550 5.0.0 — Сообщение отклонено из-за нарушения политики № 123', '');
drop;
}
notify позволяет указать точный код SMTP и сообщение. drop предотвращает дальнейшую обработку, фактически действуя как отказ. В качестве альтернативы можно установить альтернативный маршрут доставки: apache
Копировать
Редактировать
if (<условие>) {
insert-header('X-Custom-Bounce', 'нарушение политики № 123');
notify('$EnvelopeFrom', '554 5.0.0 - Сообщение отклонено из-за нарушения политики № 123', '');
drop;
}
Вы также можете настроить notify так, чтобы он включал тело сообщения или заголовки в соответствии с вашими потребностями. Это эффективно воспроизводит отказ, обеспечивая полный контроль над текстом отказа. Почему это работает
notify генерирует SMTP-уведомление в стиле DSN и позволяет использовать настраиваемое содержимое, в отличие от bounce в фильтрах сообщений. В сочетании с drop исходное сообщение отбрасывается без доставки. ![:white_heavy_check_mark:]
Сводная таблица
Необходимые действия Что и почему
Использовать notify Позволяет настраивать текст SMTP-ответа.
Вставить заголовок (необязательно) Пометить отклонения, вызванные фильтром, для регистрации в журнале.
Использовать drop Прекращает дальнейшую обработку — имитирует жесткое отклонение.
-
Спасибо за предложение.
Я проверил его и получил полезный результат. По сути, он генерирует недиалоговый отскок, который хорошо подходит для нашего случая использования. Большое спасибо и с уважением,
Стефан
Здравствуйте! Похоже, вам интересна эта беседа, но у вас пока нет учетной записи.
Вы устали просматривать одни и те же посты каждый раз, когда заходите на сайт? После регистрации, вам не придётся искать обсуждения в которых вы принимали участие, настройте уведомления о новых сообщениях так как вам это удобно (по электронной почте или уведомлением). У вас появится возможность сохранять закладки и ставить лайки постам, чтобы выразить свою благодарность другим участникам сообщества.
С вашими комментариями этот пост может стать ещё лучше 💗
Зарегистрироваться Войти