Замена адреса.

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
shuric80
проходил мимо

Замена адреса.

Непрочитанное сообщение shuric80 » 2016-05-31 14:54:49

Здравствуйте.
Такая задача. При приеме почты сервер должен сделать POST запрос, в теле запроса адрес получателя, возвращается другой адрес и полученный адрес вставляется вместо старого. Формат -json.
Письма приходят вида UUID@domain.ru (UUID на стороне генерятся). Сервер запрашивает и подставляет реальные адреса и отправляет далее.
Пока тестовый конфиг такой. Незнаю как принимать и парсить принимаемое.

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

begin routers
test:
    driver = accept
    domains = ! +local_domains
    local_part_prefix = ticket-
    transport = test

begin transports
test:
    driver = pipe  
    command = curl -X POST -d '{"email":"$local_part@$domain"}' http://0.0.0.0:8080/ticket
    debug_print = "Test transport:"

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
xM
ст. лейтенант
Сообщения: 1270
Зарегистрирован: 2009-01-15 23:57:41
Откуда: Königsberg
Контактная информация:

Замена адреса.

Непрочитанное сообщение xM » 2016-05-31 16:13:13

Ничего не понял.
Но если вам нужно менять адрес то см. rewrite
http://www.exim.org/exim-html-current/d ... iting.html
IT voodoo blog https://kostikov.co

shuric80
проходил мимо

Замена адреса.

Непрочитанное сообщение shuric80 » 2016-06-01 9:30:40

Сумбурно объяснил. Долго копался и пришел к такому конфигу.

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

begin routers
test:
    driver = redirect
    domains = example.com  
    data = ${run{curl  -X POST -d '\{"email":"$local_part@@domain"\}'  http://0.0.0.0:8080/ticket}{$value}{err}}
При проверке роутер не срабатывает.

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

troll@troll-desktop :\> exim -bt test@test.ru                                                                                            :)
R: smarthost for test@test.ru
test@test.ru
  router = smarthost, transport = remote_smtp_smarthost
  host gmail-smtp-msa.l.google.com [2a00:1450:4010:c0d::6d]  port=587
  host gmail-smtp-msa.l.google.com [173.194.73.108]          port=587
  host gmail-smtp-msa.l.google.com [173.194.73.109]          port=587