import email, smtplib, ssl from email import encoders from email.mime.base import MIMEBase #from email.mime.multipart import MIMEMultipart from email.message import EmailMessage from email.mime.text import MIMEText #move to .env or something USER_ID = 'mc536304' PASSWORD = 'Traceur22Traceur' SMTP_SERVER = 'mailout.privat.bahnhof.se' PORT = 465 # For SSL SENDER_EMAIL = 'johan@rydson.st' def _send_mail(smtp_server: str, port: int, sender_email: str, receiver_email: str, user_id: str, password: str, subject: str, body: str): """Send an email using the specified SMTP server and credentials.""" # Create a multipart message and set headers #message = MIMEMultipart() message = EmailMessage() message["From"] = sender_email message["To"] = receiver_email message["Subject"] = subject message.set_content(body) # Log in to server using secure context and send email try: context = ssl.create_default_context() with smtplib.SMTP_SSL(smtp_server, port, context=context) as server: server.login(user_id, password) server.sendmail(sender_email, receiver_email, message.as_string()) except Exception as e: print(f"Error sending email: {e}") def tool_send_mail(receiver_email: str, subject:str, body:str): """Send an email using predefined SMTP server and credentials.""" _send_mail(SMTP_SERVER, PORT, SENDER_EMAIL, receiver_email, USER_ID, PASSWORD, subject, body) if __name__ == '__main__': import sys if len(sys.argv) == 4: tool_send_mail(sys.argv[1], sys.argv[2], sys.argv[3]) else: tool_send_mail('johan.p1sson@gmail.com', 'Test Subject3', 'This is a test email body\n 67.')