From 8700f2eab5959ec3f8d1951445b445f77262302e Mon Sep 17 00:00:00 2001 From: Ryan Weaver Date: Sun, 5 Apr 2020 06:25:20 -0400 Subject: [PATCH] moving mailer transport section This is to hopefully cause less confusion with Messenger transports --- mailer.rst | 60 +++++++++++++++++++++++++++--------------------------- 1 file changed, 30 insertions(+), 30 deletions(-) diff --git a/mailer.rst b/mailer.rst index da9aa3b3f3e..e45f2551428 100644 --- a/mailer.rst +++ b/mailer.rst @@ -658,6 +658,36 @@ and it will select the appropriate certificate depending on the ``To`` option:: $firstEncryptedEmail = $encrypter->encrypt($firstEmail); $secondEncryptedEmail = $encrypter->encrypt($secondEmail); +Multiple Email Transports +------------------------- + +.. versionadded:: 4.4 + + The option to define multiple email transports was introduced in Symfony 4.4. + +You may want to use more than one mailer transport for delivery of your messages. +This can be configured by replacing the ``dsn`` configuration entry with a +``transports`` entry, like: + +.. code-block:: yaml + + # config/packages/mailer.yaml + framework: + mailer: + transports: + main: '%env(MAILER_DSN)%' + alternative: '%env(MAILER_DSN_IMPORTANT)%' + +By default the first transport is used. The other transports can be used by +adding a text header ``X-Transport`` to an email:: + + // Send using first "main" transport ... + $mailer->send($email); + + // ... or use the "alternative" one + $email->getHeaders()->addTextHeader('X-Transport', 'alternative'); + $mailer->send($email); + Sending Messages Async ---------------------- @@ -719,36 +749,6 @@ you have a transport called ``async``, you can route the message there: Thanks to this, instead of being delivered immediately, messages will be sent to the transport to be handled later (see :ref:`messenger-worker`). -Multiple Email Transports -------------------------- - -.. versionadded:: 4.4 - - The option to define multiple email transports was introduced in Symfony 4.4. - -You may want to use more than one mailer transport for delivery of your messages. -This can be configured by replacing the ``dsn`` configuration entry with a -``transports`` entry, like: - -.. code-block:: yaml - - # config/packages/mailer.yaml - framework: - mailer: - transports: - main: '%env(MAILER_DSN)%' - important: '%env(MAILER_DSN_IMPORTANT)%' - -By default the first transport is used. The other transports can be used by -adding a text header ``X-Transport`` to an email:: - - // Send using first "main" transport ... - $mailer->send($email); - - // ... or use the "important" one - $email->getHeaders()->addTextHeader('X-Transport', 'important'); - $mailer->send($email); - Development & Debugging -----------------------