Назад | Перейти на главную страницу

постфиксная перезапись условного получателя

Я изо всех сил пытаюсь интегрировать Postfix с RT. Я новичок во всем этом, поэтому, возможно, совершаю глупые ошибки.

AFAIU, Postfix и RT интегрируются с сопоставлением между очередью RT и адресом получателя в /etc/alias файл.

Мы сделали это для двух очередей:

support:    "|/opt/rt4/bin/rt-mailgate --queue general --action correspond --url http://localhost" 
support-urgent "|/opt/rt4/bin/rt-mailgate --queue urgent --action correspond --url http://localhost"

Поэтому всякий раз, когда электронное письмо отправляется на support@company.com, он попадает в общую очередь и всякий раз, когда он отправляется support-urgent@company.com, он попадает в другую очередь.

Однако мы хотели бы упростить жизнь нашим клиентам, сообщая им только один адрес электронной почты: support@company.com.

Затем мы ведем список клиентов, с которыми у нас есть контракт, который дает им приоритет.

По сути, нам нужно будет выполнить некоторую условную перезапись получателя на основе поиска по адресу отправителя. Если X@customerA.com находится в нашем списке приоритетов, адрес получателя следует изменить на support-urgent@company.com для того, чтобы забрать его в нужной очереди. Если B@companyB.com отсутствует в списке, то перезапись не потребуется.

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

Спасибо за любую помощь или подсказки. Себ.

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

В вики сообщества RT есть пример скрипта, который устанавливает очередь автоматически. В вашем случае вы должны иметь возможность просматривать объект Requestor в заявке, поскольку заявка уже создана. Условием будет «Создано».

Если вы знакомы с инструментами Unix, но не знакомы с Perl, вы также можете выполнить эту обработку почты в procmail.

Вам нужно добавить в свой /etc/procmail/main.cf:

mailbox_command = procmail -a "$EXTENSION"

Пример / etc / procmailrc:

:0
* ^From: .*<+X@customerA.com>+
* ^Subject:.*optional.*
| /opt/rt4/bin/rt-mailgate --action correspond --queue urgent --url http://localhost

Вы можете использовать регулярные выражения для соответствия списку VIP-пользователей или вести белый список во внешнем файле

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