View Issue Details
|ID||Project||Category||View Status||Date Submitted||Last Update|
|0009160||phpList 3 application||Campaign Send Process||public||09-02-07 12:20||29-04-11 19:37|
|Target Version||Fixed in Version|
|Summary||0009160: Swift Mailer Implementation (More efficient & featured PHPMailer replacement)|
|Description||I'd love to see Swift Mailer implemented into PHPList, which would replace the currently used PHPMailer class.|
Swift is a fully OOP Library for sending e-mails from PHP websites and applications. Swift is comparable to PHPMailer except that it is much faster and more efficient, and implements an extremely flexible and innovative plugin system. The interface for Swift is both tighter and more intuitive.
PHPMailer is now very outdated; it is no longer in active development, is limited in support, and is lacking in essential features such as TLS/SSL and is difficult to interface with.
I've used Swift Mailer already and I'm in awe of it's speed & performance, flexibility and ease of use.
Please would the development team consider implementing Swift Mailer?
I'd love to contribute.
|Additional Information||Some of Swift Mailer Features:|
* Send uses one single connection to the SMTP server or MTA
* Doesn't rely on mail()
* Custom Headers
* Multiple encoding options
* Unlimited redundant connections (can use mixed types too)
* Connection rotating/load balancing
* TLS Support - for Gmail servers
* Embedded Images or other file types
* Builds and sends Multipart messages
* Sends single-part emails as usual
* Fast Cc and Bcc handling
* Unicode UTF-8 support, with auto-detection
* Handles denied recipients in batch mailing whilst still delivering to the others
* Optional auto-detection of SMTP or Sendmail settings
* Batch emailing with multiple To's or without
* Send to hundreds of thousands of addresses without cron
* Support for multiple attachments
* Protection against header injection
* Set message priority
* Request Read Receipts
* Sendmail (or other binary) support
* Pluggable SMTP Authentication (LOGIN, PLAIN, MD5-CRAM, POP Before SMTP)
* Anti-Flooding support (reconnect every X emails) via plugin
* Secure Socket Layer connections (SSL)
* Loadable plugin support with event handling features
|Tags||No tags attached.|
Swift-2.1.17.zip (295,176 bytes)
apologies for anyone who gets to this page after having received a "reminder". Unfortunately, someone accidentally "reminded" the entire list of users in mantis about this issue, which automatically sends out an email.
We have removed this from the database, and we have updated the permissions in mantis, so that this cannot happen again.
I'd welcome this change, or at least adding SwiftMailer to the options on installing PHPList. The sendmail function in PHPList is indeed creaky, as you can see in many other posts on this forum. If Swift can improve it, wonderful. But let's be careful to keep the original PHPMailer routines in place as the default -- and offer a simple way to substitute SwiftMailer.
How does one do that, by the way? I want to try this out on a couple of my installations, and am pretty fearless in editing various types of config files...but I don't want to break anything, and just using the installer in the Swift-2.1.17.zip file here is likely to make some pretty deep, irreversible changes to my installations of PHPList.
||most flexible way to implement it would be by adding a wrapping class like phplistmailer is around phpmailer, so that the phplist specifics can be created there.|
It looks like michiel and the rest of the development team are too busy to help implement this, so would you like to work on this with me?
Michiel has suggested adding a 'wrapping class' similar to how the phplistmailer class is added on top of phpmailer; do you know how we'd go about implementing this?
||I'm not PHP-literate enough to actually develop a wrapping class for PHPMailer, though I do understand what it is. I could help by writing a spec for it, laying out the variables that should be set by a simple menu-selection app, if someone can write the underlying code.|
||seesm to continue on 0015357|