Add CC and debug features
This commit is contained in:
parent
2700669489
commit
2de4d54360
@ -1,7 +1,7 @@
|
|||||||
"""
|
"""
|
||||||
title: Send Email
|
title: Send Email
|
||||||
author: Josh Knapp
|
author: Josh Knapp
|
||||||
version: 0.1.0
|
version: 0.2.0
|
||||||
description="Send email via SMTP to user specificed address"
|
description="Send email via SMTP to user specificed address"
|
||||||
"""
|
"""
|
||||||
|
|
||||||
@ -51,6 +51,10 @@ class Tools:
|
|||||||
default="",
|
default="",
|
||||||
description="Email address to CC on all outgoing emails"
|
description="Email address to CC on all outgoing emails"
|
||||||
)
|
)
|
||||||
|
DEBUG: bool = Field(
|
||||||
|
default=False,
|
||||||
|
description="Debug the output of the script, defaults to False"
|
||||||
|
)
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
self.valves = self.Valves()
|
self.valves = self.Valves()
|
||||||
@ -78,7 +82,7 @@ class Tools:
|
|||||||
msg['Subject'] = subject
|
msg['Subject'] = subject
|
||||||
|
|
||||||
# Add body to email
|
# Add body to email
|
||||||
msg.attach(MIMEText(message, 'plain'))
|
msg.attach(MIMEText(message + "\n\n This email was sent via OpenWebUI-SendEmail - https://repo.anhonesthost.net/OpenWebUI-Tools/OpenWebUI-SendEmail", 'plain'))
|
||||||
|
|
||||||
# Create SMTP connection
|
# Create SMTP connection
|
||||||
if self.valves.MAIL_SERVER_SSL:
|
if self.valves.MAIL_SERVER_SSL:
|
||||||
@ -96,16 +100,27 @@ class Tools:
|
|||||||
server.login(self.valves.EMAIL_ADDRESS, self.valves.EMAIL_PASSWORD)
|
server.login(self.valves.EMAIL_ADDRESS, self.valves.EMAIL_PASSWORD)
|
||||||
|
|
||||||
# Send email
|
# Send email
|
||||||
text = msg.as_string() + "\n\n This email was sent via OpenWebUI-SendEmail"
|
text = msg.as_string()
|
||||||
server.sendmail(self.valves.EMAIL_ADDRESS, to_address, text)
|
if self.valves.DEBUG:
|
||||||
|
print(f"Sending email to {to_address} with subject: {subject}")
|
||||||
|
print(f"Message content: {message}")
|
||||||
|
print(f"Using server: {self.valves.MAIL_SERVER_ADDR}:{self.valves.MAIL_SERVER_PORT}")
|
||||||
|
print(f"Using SSL: {self.valves.MAIL_SERVER_SSL}")
|
||||||
|
print(f"Using credentials: {self.valves.EMAIL_ADDRESS}")
|
||||||
|
recipients = [to_address]
|
||||||
|
if self.valves.CC_EMAIL:
|
||||||
|
recipients.append(self.valves.CC_EMAIL)
|
||||||
|
server.sendmail(self.valves.EMAIL_ADDRESS, recipients, text)
|
||||||
server.quit()
|
server.quit()
|
||||||
|
|
||||||
return {
|
return {
|
||||||
"success": True,
|
"success": True,
|
||||||
"message": f"Email sent successfully to {to_address}"
|
"message": f"Email sent successfully to {to_address} with CC to {self.valves.CC_EMAIL if self.valves.CC_EMAIL else 'no one'}"
|
||||||
}
|
}
|
||||||
|
|
||||||
except Exception as e:
|
except Exception as e:
|
||||||
|
if self.valves.DEBUG:
|
||||||
|
print(f"Error sending email: {str(e)}")
|
||||||
return {
|
return {
|
||||||
"success": False,
|
"success": False,
|
||||||
"message": f"Failed to send email: {str(e)}"
|
"message": f"Failed to send email: {str(e)}"
|
||||||
|
Loading…
Reference in New Issue
Block a user