MailDelivery is a framework, originally created for one of my applications Massive Mail. It was designed using the MailDelivery class (part of the Message framework) as model and to cover the following needs.
- I want to import accounts from Mail.app (if I need to create a "Accounts Preference Pane" most of the job is already done).
- I want to send messages from different places of my application, so, I want to send messages without having to write dozens or hundreds of lines of extra code.
- I don't want to deal with Keychain to send emails, but I want Keychain support to store my passwords (including MobileMe accounts).
- If a message could not be sent, I want to know the reason.
- I want to include custom message headers.
- I want SSL and TLS support.
- I want to be able to send multipart, HMTL and plain text messages, but I do not want to read dozens of RFC's in order to do that.
- Sometimes I want to provide my own source
- If something went wrong, I want my application be able to send emails through Mail.