1- import smtplib , ssl
1+ from smtplib import SMTP_SSL
2+ from ssl import create_default_context
23from email .message import EmailMessage
3- from constants import *
4+ from . import constants
45
5- password = app_password # The password is stored in local
66
77def init_server ():
8- context = ssl . create_default_context ()
9- server = smtplib . SMTP_SSL ("smtp.gmail.com" , 465 , context = context )
8+ context = create_default_context ()
9+ server = SMTP_SSL (constants . smtp_server , constants . port , context = context )
1010 return server
1111
12- def server_login (server , password ):
13- email = sender_email
14- server .login (email , password )
1512
16- def server_send_email (server , receiver_email , message ):
17- receiver_email = receiver_email
18- sender_email = sender_email
19- subject = "Email from ticketmaster Best Seat App"
13+ def server_login (server : SMTP_SSL , password : str ):
14+ return server .login (constants .sender_email , password )
2015
16+
17+ def auth_server (server : SMTP_SSL ):
18+ server_login (server , constants .app_password )
19+
20+
21+ server = init_server ()
22+ # auth_server(server)
23+
24+
25+ def server_send_email (server : SMTP_SSL , receiver_emails : list [str ], message : str ):
2126 em = EmailMessage ()
22- em ['From' ] = sender_email
23- em ['To' ] = receiver_email
24- em ['subject' ] = subject
27+ em ['From' ] = constants . sender_email
28+ em ['To' ] = receiver_emails
29+ em ['subject' ] = constants . subject
2530
2631 em .set_content (message )
27- server .sendmail (sender_email , receiver_email , em .as_string ())
28-
29- def send_email (receiver_email , message ):
30- server = init_server ()
31- server_login (server , password )
32- server_send_email (server , receiver_email , message )
32+ return server .sendmail (constants .sender_email , receiver_emails , em .as_string ())
3333
3434
35- send_email ([
"[email protected] " ],
password )
35+ def send_email (receiver_emails : list [str ], message : str ):
36+ try :
37+ err = server_send_email (server , receiver_emails , message )
38+ if err is not None :
39+ raise Exception ('could not send email to the receiver' )
40+ except Exception as ex :
41+ print (ex )
0 commit comments