[exim] Outgoing control to specific domains

Top Page
Delete this message
Reply to this message
Author: F. Mendez
Date:  
To: exim-users
Subject: [exim] Outgoing control to specific domains
Hello all.

At my work we have over 30,000 clients and most of them uses
hotmail/yahoo/gmail accounts. Recently we faced an issue regarding payment
notifications emails being blocked by hotmail and the other mentioned ESP
because of concurrent connections and too much mails per hour sent. This
caused some issues with accounts being suspended by unpaid invoices and
clients complaints because of mails notifications never arrived.

So far I have managed to know each ESP limits but still I dont know how to
implement the following:


- Being able to control how many mails can be sent in an hour to an specific
domain to obey its limits in total.
- Being able to control how many connections at a time can be made to an
specific domain.
- Being able to control how many mails per connection can be sent respecting
ESP limits.
- Having all that done, mails that did not reach delivery throttle capacity
during a given period, must return to queue and be first in line for next
queue run.

So far I were doing some research and with a combination of domainlist,
placeholders and remote transport I’m half the way but I need your help.


This is what I have done so far:

domainlist throttled_aol = aol.com : aim.com : aol.com.au : aol.com.mx :
aol.com.ar : compuserve.com
domainlist throttled_yahoo = yahoo.com : ymail.com : rocketmail.com :
yahoo.co.uk : yahoo.fr : yahoo.com.br : yahoo.co.in : yahoo.ca :
yahoo.com.ar : yahoo.com.cn : yahoo.com.mx : yahoo.co.kr : yahoo.co.nz :
yahoo.com.hk : yahoo.com.sg : yahoo.es : yahoo.gr : yahoo.de : yahoo.com.ph
: yahoo.com.tw : yahoo.dk : yahoo.ie : yahoo.it : yahoo.se : yahoo.com.au :
yahoo.co.id : yahoo.cl : yahoo.com.pe : geocities.com : y7mail.com :
btinternet.com : btopenworld.com : flash.net : wans.net : xtra.co.nz :
yahooxtra.co.nz
domainlist throttled_hotmail = hotmail.com : hotmail.fr : live.com :
hotmail.co.uk : hotmail.it : windowslive.com : live.fr : hotmail.de :
hotmail.es : live.co.uk : live.it : hotmail.co.jp : live.com.mx : live.nl :
live.de : live.cn : live.ru : live.ca : live.com.ar : hotmail.co.th :
live.com.au : live.jp : live.se : live.cl : live.com.pt : live.be : live.dk
: hotmail.com.tr : livemail.tw : live.no : hotmail.se : hotmail.com.tw :
live.co.kr : hotmail.co.nz : live.at : live.in : hotmail.gr : hotmail.be :
live.hk : live.ie : msn.cn : hotmail.co.kr : hotmail.no : hotmail.ch :
live.co.za : hotmail.com.hk : live.com.my : live.com.sg : hotmail.fi :
hotmail.my : hotmail.co.id : hotmail.sg : hotmail.com.au : hotmail.co.za :
hotmail.dk : hotmail.rs : live.com.ph : hotmail.ph : hotmail.com.vn :
hotmail.cz : outlook.com
domainlist throttled_gmail = gmail.com : googlemail.com

-----------
Placeholders

throttled_aol:
    driver = dnslookup
    domains = +throttled_aol
    transport = smtp_throttled_aol
    ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
    retry_use_local_part
    no_more


throttled_yahoo:
    driver = dnslookup
    domains = +throttled_yahoo
    transport = smtp_throttled_yahoo
    ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
    retry_use_local_part
    no_more


..and so on with other ESP

------------
Transport

smtp_throttled_aol:
    driver = smtp
    hosts_max_try = 5
    hosts_max_try_hardlimit = 7
    multi_domain = true
    connection_max_messages = 450
    max_rcpt = 20
    serialize_hosts = *
    retry_use_local_part






I would appreciate that you can give your help around this.