Create bounce when handling bounce
This commit is contained in:
parent
b3181c054f
commit
3e1ef3358b
|
@ -33,7 +33,6 @@ It should contain the following info:
|
||||||
import argparse
|
import argparse
|
||||||
import asyncio
|
import asyncio
|
||||||
import email
|
import email
|
||||||
import os
|
|
||||||
import time
|
import time
|
||||||
import uuid
|
import uuid
|
||||||
from email import encoders
|
from email import encoders
|
||||||
|
@ -121,10 +120,12 @@ from app.models import (
|
||||||
User,
|
User,
|
||||||
RefusedEmail,
|
RefusedEmail,
|
||||||
Mailbox,
|
Mailbox,
|
||||||
|
Bounce,
|
||||||
|
TransactionalEmail,
|
||||||
)
|
)
|
||||||
from app.pgp_utils import PGPException, sign_data_with_pgpy, sign_data
|
from app.pgp_utils import PGPException, sign_data_with_pgpy, sign_data
|
||||||
from app.spamassassin_utils import SpamAssassin
|
from app.spamassassin_utils import SpamAssassin
|
||||||
from app.utils import random_string, sanitize_email
|
from app.utils import sanitize_email
|
||||||
from init_app import load_pgp_public_keys
|
from init_app import load_pgp_public_keys
|
||||||
from server import create_app, create_light_app
|
from server import create_app, create_light_app
|
||||||
|
|
||||||
|
@ -1134,6 +1135,8 @@ def handle_bounce_forward_phase(msg: Message, email_log: EmailLog):
|
||||||
LOG.exception("Use %s default mailbox %s", alias, alias.mailbox)
|
LOG.exception("Use %s default mailbox %s", alias, alias.mailbox)
|
||||||
mailbox = alias.mailbox
|
mailbox = alias.mailbox
|
||||||
|
|
||||||
|
Bounce.create(email=mailbox.email, commit=True)
|
||||||
|
|
||||||
LOG.debug(
|
LOG.debug(
|
||||||
"Handle forward bounce %s -> %s -> %s. %s", contact, alias, mailbox, email_log
|
"Handle forward bounce %s -> %s -> %s. %s", contact, alias, mailbox, email_log
|
||||||
)
|
)
|
||||||
|
@ -1244,7 +1247,7 @@ def handle_bounce_reply_phase(msg: Message, email_log: EmailLog):
|
||||||
Handle reply phase bounce
|
Handle reply phase bounce
|
||||||
Happens when an email cannot be sent from an alias to a contact
|
Happens when an email cannot be sent from an alias to a contact
|
||||||
"""
|
"""
|
||||||
contact = email_log.contact
|
contact: Contact = email_log.contact
|
||||||
alias = contact.alias
|
alias = contact.alias
|
||||||
user = alias.user
|
user = alias.user
|
||||||
mailbox = email_log.mailbox or alias.mailbox
|
mailbox = email_log.mailbox or alias.mailbox
|
||||||
|
@ -1253,6 +1256,8 @@ def handle_bounce_reply_phase(msg: Message, email_log: EmailLog):
|
||||||
"Handle reply bounce %s -> %s -> %s.%s", mailbox, alias, contact, email_log
|
"Handle reply bounce %s -> %s -> %s.%s", mailbox, alias, contact, email_log
|
||||||
)
|
)
|
||||||
|
|
||||||
|
Bounce.create(email=contact.website_email, commit=True)
|
||||||
|
|
||||||
# Store the bounced email
|
# Store the bounced email
|
||||||
# generate a name for the email
|
# generate a name for the email
|
||||||
random_name = str(uuid.uuid4())
|
random_name = str(uuid.uuid4())
|
||||||
|
|
Loading…
Reference in New Issue