blob: 62ef6d067cb9c19e99be546e5ed4dee3d332e4b4 [file] [log] [blame]
# Simple SMTP interface
import smtplib
# Import the email modules we'll need
from email.mime.text import MIMEText
__SENDER__ = 'Projects <apsite@apache.org>'
__RECIPIENTS__ = 'Site Development <site-dev@apache.org>'
__REPLY_TO__ = 'site-dev@apache.org'
def sendMail(subject, body='', recipients=__RECIPIENTS__, sender=__SENDER__, port=25, replyTo=__REPLY_TO__):
# Create a text/plain message
msg = MIMEText(body)
msg['Subject'] = subject
msg['From'] = sender
if isinstance(recipients, str):
msg['To'] = recipients
else:
msg['To'] = ",".join(recipients)
if replyTo != None:
msg['Reply-To'] = replyTo
smtp = smtplib.SMTP('localhost', port)
# smtp.set_debuglevel(True)
smtp.sendmail(sender, recipients, msg.as_string())
smtp.quit()
if __name__ == '__main__':
import sys
port = 25
if len(sys.argv) > 1: # argv[0] is the script name
port = int(sys.argv[1])
# for testing locally:
# sudo postfix start # MacoxX
# or start a debug server => need to change the SMTP port
# python -m smtpd -n -c DebuggingServer localhost:1025
sendMail('Test message, please ignore', "Thanks!", port=port)
print("Sent")
sendMail('Another Test message, please ignore', "Thanks again!", recipients=['a.b.c','d.e.f'], port=port)
print("Sent second")