Страница 1 из 1

Условия в роутерах Exim

Добавлено: 2014-09-04 8:35:33
ikarus
Есть exim, и есть у него в числе прочих два роутера:

Код: Выделить всё

gmail_route:
driver = manualroute
domains = ! +local_domains : +gmail_domains
transport = gmail_relay
route_list = * smtp.gmail.com
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8

Код: Выделить всё

dnslookup:
driver = dnslookup
domains = ! +local_domains : ! +gmail_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
первый работает через внешний smtp, но только для адресатов с доменами, определенными в +gmail_domains, второй для всех остальных. Вопрос! Как сделать чтобы изначально работал роутер dnslookup, и только при условии невозможности доставки включался gmail_route? Т.е. можно ли как то например привязать сюда повторы отправки, т.е. например по окончанию всех повторов, если письмо так и не ушло, пробовать отправлять через gmail_route??
з.ы. Или это лучше делать на уровне транспорта??

Re: Условия в роутерах Exim

Добавлено: 2014-09-05 5:25:25
ikarus
Решил, если вдруг кому интересно:

Код: Выделить всё

dnslookup:
driver = dnslookup
domains = ! +local_domains
condition = ${if < {$message_age}{86400}}   #условие проверяющее возраст письма, в данном случае это 86400сек=24ч
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8

gmail_route:
driver = manualroute
domains = ! +local_domains
transport = gmail_relay
route_list = * smtp.gmail.com
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more