we/swiftmailerspool

A Flow package to extend the Neos Swift Mailer by a spool for asynchronous mailing

Installs: 2 059

Dependents: 0

Suggesters: 0

Security: 0

Stars: 2

Watchers: 12

Forks: 1

Open Issues: 1

Type:typo3-flow-package

dev-master 2016-03-01 04:34 UTC

This package is not auto-updated.

Last update: 2021-12-04 04:39:15 UTC


README

This Flow package extends the Neos Swift Mailer by a spool for asynchronous mailing.

Configuration

The package is pre-configured to use a the file spool:

WE:
  SwiftMailerSpool:
	spool:
	  type: 'Swift_FileSpool'
	  options: []
	  arguments:
		path: %FLOW_PATH_DATA%/SwiftMailerSpool/

Usage

Different from the Neos Swift Mailer, a \Swift_Message has to be created instead of using the \TYPO3\SwiftMailer\Message object. This is due to a problem on the serialization of the message that happens in the \FileSpool as the serialized \TYPO3\SwiftMailer\Message does not include its private parent properties of the \Swift_Message.

The process is the same as with the normal SwiftMailer library.

Inject the mailer interface which now is a \Swift_SpoolTransport object:

/**
 * @Flow\Inject
 * @var \TYPO3\SwiftMailer\MailerInterface
 */
protected $mailer;

Create the message:

$mail = new \Swift_Message();

Send the message with the mailer:

$this->mailer->send($mail);

Now, the mail is in the spool and can really be sent by the command:

./flow swiftmailerspool:flush