Skip to content

Commit 4b811f4

Browse files
committed
add missing event
1 parent 287b258 commit 4b811f4

File tree

1 file changed

+43
-5
lines changed

1 file changed

+43
-5
lines changed

notifier/events.rst

Lines changed: 43 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -9,14 +9,14 @@ into the lifecycle via events. Instead of reinventing
99
the wheel, it uses the Symfony EventDispatcher component to do the work::
1010

1111

12-
The ``MessageEvent`` Event
12+
The ``MessageEvent::class`` Event
1313
--------------------------
1414

1515
**Typical Purposes**: Doing something before the message is send (like logging
1616
which message is going to be send), or displaying something about the event
1717
to be executed.
1818

19-
Just before executing any command, the ``MessageEvent`` event is
19+
Just before send the message, the event class ``MessageEvent`` is
2020
dispatched. Listeners receive a
2121
:class:`Symfony\\Component\\Notifier\\Event\\MessageEvent` event::
2222

@@ -27,12 +27,50 @@ dispatched. Listeners receive a
2727
$message = $event->getMessage();
2828

2929
// log something
30-
$this->logger(sprintf("Message with subject: %s will be send to %s, $message->getSubject(), $message->getRecipientId()");
30+
$this->logger(sprintf("Message with subject: %s will be send to %s, $message->getSubject(), $message->getRecipientId()"));
3131
});
3232

33+
The ``FailedMessageEvent`` Event
34+
--------------------------------
35+
36+
**Typical Purposes**: Doing something before the exception is thrown (Retry to send the message or log additional informations).
37+
38+
Whenever an exception is thrown while sending the message, the event class ``FailedMessageEvent`` is
39+
dispatched. A listener can do anything useful before the exception is thrown.
40+
41+
Listeners receive a
42+
:class:`Symfony\\Component\\Notifier\\Event\\FailedMessageEvent` event::
43+
44+
use Symfony\Component\Notifier\Event\FailedMessageEvent;
45+
46+
$dispatcher->addListener(FailedMessageEvent::class, function (FailedMessageEvent $event) {
47+
// gets the message instance
48+
$message = $event->getMessage();
49+
50+
// gets the error instance
51+
$error = $event->getError();
52+
53+
// log something
54+
$this->logger(sprintf("The message with subject: %s has not been sent successfully. The error is: %s, $message->getSubject(), $error->getMessage()"));
55+
});
56+
57+
3358
The ``SentMessageEvent`` Event
34-
--------------------------
59+
------------------------------
3560

36-
**Typical Purposes**: Doing something when the message is sent (like retrieve the id returned
61+
**Typical Purposes**: To perform some action when the message is successfully sent (like retrieve the id returned
3762
when the message is sent).
3863

64+
After the message has been successfully sent, the event class ``SentMessageEvent`` is
65+
dispatched. Listeners receive a
66+
:class:`Symfony\\Component\\Notifier\\Event\\SentMessageEvent` event::
67+
68+
use Symfony\Component\Notifier\Event\SentMessageEvent;
69+
70+
$dispatcher->addListener(SentMessageEvent::class, function (SentMessageEvent $event) {
71+
// gets the message instance
72+
$message = $event->getOriginalMessage();
73+
74+
// log something
75+
$this->logger(sprintf("The message has been successfully sent and have id: %s, $message->getMessageId()"));
76+
});

0 commit comments

Comments
 (0)