You can tweak a few things I think. One is the setting is
maximal_queue_lifetime
this determines how long a message will remain in the queue. i think the default is 5 days, so when your user sends to
soemone@yahoo.com and it can't be delivered because of that they'll usually get the NDR 5 days later.
If you set that to 0 it will only try once and then give up and send the NDR. The other option, one we prefer is to leave the queue life at 5days, but send a warning after like 4 hours. you can control this with the option
delay_warning_time
this is set to 0 i think by default.
so if you leave the queue lifetime to 5d and set the warning time to 4h heres what will happen
the user sends an e-mail to
soemoene@yahoo.com and your server gets the connection refused. it defers the message to the queue to be retired for 5 days.
after 4 hours your user gets an -emila that says that delivery has been unsuccessful and it will try again for 5 days and not to resend the e-mail.
after 5 days your user will get a message that says it was unable to deliver it for 5 days and is giving up.