diff --git a/django_aws_ses/backends.py b/django_aws_ses/backends.py index 7a9674c..f86f7cc 100644 --- a/django_aws_ses/backends.py +++ b/django_aws_ses/backends.py @@ -242,6 +242,7 @@ class SESBackend(BaseEmailBackend): f"message_id={message.extra_headers['message_id']}, request_id={message.extra_headers['request_id']}" ) list_of_response.append(response) + signals.email_post_send.send_robust(self.__class__, message=message) except ResponseError as err: logger.error(f"Failed to send email: {err}") message.extra_headers.update({ diff --git a/django_aws_ses/utils.py b/django_aws_ses/utils.py index 1133c34..ae82d9b 100644 --- a/django_aws_ses/utils.py +++ b/django_aws_ses/utils.py @@ -212,6 +212,13 @@ def receiver_email_pre_send(sender, message=None, **kwargs): """ pass +@receiver(signals.email_post_send) +def receiver_email_post_send(sender, message=None, **kwargs): + """Handle post-send actions (e.g., log success, update metrics).""" + if message: + logger.info(f"Email sent successfully to {message.recipients()}") + # Add custom logic here + def filter_recipients(recipiant_list): """ Filters a list of recipient email addresses to exclude invalid or blacklisted emails.