- fully fail-safe, fault-tolerant SMTP transactions
- fully elimination of backscatter problems
- fully transferring the responsibility of error reporting and queuing to the sender
This feature allows the system to fail (hardware failure, etc) at any moment during operation without the risk of loosing any data. The implementation will not confirm message acceptance (220 OK) until the message is accepted by the receiving backend mail server.
Enabling in-line delivery
Enabling in-line instead of queued delivery is as simple as setting the Deliver function's queue argument to false.
The feature has a few defined limitations, in order to prevent odd behaviours such as message duplication and unknown message delivery statuses on multiple recipients. These limitations usually cause an runtime exception, and include:
- Delivery has to be made to a single backend server (it cannot operate in lookup-mx/outbound mode)
- Per-recipient modification to a single message cannot be done (eg. SetHeader("X-Recipient", $recipient))
- If one recipient fails (because of the backend server), the message will not be delivered (solved by enabling recipient filtering in the RCPT TO script).