[utils/sendmail] Modif qui traîne
This commit is contained in:
parent
dbac5708f3
commit
25a4e225e4
1 changed files with 16 additions and 3 deletions
|
@ -6,14 +6,18 @@
|
|||
|
||||
"""
|
||||
|
||||
# Librairie de communication SMTP
|
||||
#: Librairie de communication SMTP
|
||||
import smtplib
|
||||
#: Pour fabriquer un mail en MIME
|
||||
from email.mime.text import MIMEText
|
||||
#: Pour encoder le mail en utf-8
|
||||
from email import Charset
|
||||
Charset.add_charset('utf-8', Charset.QP, Charset.QP, 'utf-8')
|
||||
|
||||
def sendmail(emetteur, destinataires, objet, message, cc=[], more_headers={}, debug=False):
|
||||
"""Envoie un mail en utilisant la commande sendmail"""
|
||||
def create_mail(emetteur, destinataires, objet, message, cc=[], more_headers={}):
|
||||
"""Fabrique un mail"""
|
||||
if not isinstance(destinataires, list):
|
||||
destinataires = [destinataires]
|
||||
mail = MIMEText(message, "plain", "utf-8")
|
||||
mail["From"] = emetteur
|
||||
mail["To"] = u", ".join(destinataires)
|
||||
|
@ -23,6 +27,10 @@ def sendmail(emetteur, destinataires, objet, message, cc=[], more_headers={}, de
|
|||
mail[k] = more_headers[k]
|
||||
if cc != []:
|
||||
mail["Cc"] = u", ".join(cc)
|
||||
return mail
|
||||
|
||||
def actually_sendmail(emetteur, destinataires, mail, debug=False):
|
||||
"""Envoie un mail en dialoguant avec le serveur SMTP"""
|
||||
if debug:
|
||||
print mail.as_string()
|
||||
else:
|
||||
|
@ -30,6 +38,11 @@ def sendmail(emetteur, destinataires, objet, message, cc=[], more_headers={}, de
|
|||
s.sendmail(emetteur, destinataires, mail.as_string())
|
||||
s.quit()
|
||||
|
||||
def sendmail(emetteur, destinataires, objet, message, cc=[], more_headers={}, debug=False):
|
||||
"""Fabrique le mail et l'envoie"""
|
||||
mail = create_mail(emetteur, destinataires, objet, message, cc, more_headers)
|
||||
actually_sendmail(emetteur, destinataires, mail, debug)
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
print "Exemple d'utilisation :"
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue