@@ -1429,8 +1429,8 @@ MessageEvent
14291429
14301430**Event Class **: :class: `Symfony\\ Component\\ Mailer\\ Event\\ MessageEvent `
14311431
1432- ``MessageEvent `` allows to change the Message and the Envelope before the email
1433- is sent::
1432+ ``MessageEvent `` allows to change the Mailer message and the envelope before
1433+ the email is sent::
14341434
14351435 use Symfony\Component\EventDispatcher\EventSubscriberInterface;
14361436 use Symfony\Component\Mailer\Event\MessageEvent;
@@ -1459,6 +1459,48 @@ and their priorities:
14591459
14601460 $ php bin/console debug:event-dispatcher "Symfony\Component\Mailer\Event\MessageEvent"
14611461
1462+ QueuingMessageEvent
1463+ ~~~~~~~~~~~~~~~~~~~
1464+
1465+ **Event Class **: :class: `Symfony\\ Component\\ Mailer\\ Event\\ QueuingMessageEvent `
1466+
1467+ .. versionadded :: 6.2
1468+
1469+ The ``QueuingMessageEvent `` class was introduced in Symfony 6.2.
1470+
1471+ ``QueuingMessageEvent `` allows to add some logic before the email is sent to
1472+ the Messenger bus (this event is not dispatched when no bus is configured); it
1473+ extends ``MessageEvent `` to allow adding Messenger stamps to the Messenger
1474+ message sent to the bus::
1475+
1476+ use Symfony\Component\EventDispatcher\EventSubscriberInterface;
1477+ use Symfony\Component\Mailer\Event\QueuingMessageEvent;
1478+ use Symfony\Component\Mime\Email;
1479+
1480+ public function onMessage(QueuingMessageEvent $event): void
1481+ {
1482+ $message = $event->getMessage();
1483+ if (!$message instanceof Email) {
1484+ return;
1485+ }
1486+ // do something with the message (logging, ...)
1487+
1488+ // and/or add some Messenger stamps
1489+ $event->addStamp(new SomeMessengerStamp());
1490+ }
1491+
1492+ This event lets listeners do something before a message is sent to the queue
1493+ (like adding stamps or logging) but any changes to the message or the envelope
1494+ are discarded. To change the message or the envelope, listen to
1495+ ``MessageEvent `` instead.
1496+
1497+ Execute this command to find out which listeners are registered for this event
1498+ and their priorities:
1499+
1500+ .. code-block :: terminal
1501+
1502+ $ php bin/console debug:event-dispatcher "Symfony\Component\Mailer\Event\QueuingMessageEvent"
1503+
14621504 SentMessageEvent
14631505~~~~~~~~~~~~~~~~
14641506
0 commit comments