mail: utilisation du context manager pour smtp
This commit is contained in:
parent
bdeac3f7b0
commit
c60a2589a3
3 changed files with 37 additions and 37 deletions
|
@ -2,12 +2,13 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
# Auteur: Gabriel Detraz
|
# Auteur: Gabriel Detraz
|
||||||
|
|
||||||
from lc_ldap import shortcuts
|
|
||||||
import smtplib
|
|
||||||
from email.header import Header
|
from email.header import Header
|
||||||
from email.MIMEText import MIMEText
|
from email.MIMEText import MIMEText
|
||||||
from email.Utils import formatdate
|
from email.Utils import formatdate
|
||||||
|
|
||||||
|
from lc_ldap import shortcuts
|
||||||
|
import gestion.mail as mail_module
|
||||||
|
|
||||||
SEND = False
|
SEND = False
|
||||||
|
|
||||||
con = shortcuts.lc_ldap_readonly()
|
con = shortcuts.lc_ldap_readonly()
|
||||||
|
@ -48,5 +49,6 @@ Les membres actifs du Crans'''
|
||||||
MonEmail['To'] = m2
|
MonEmail['To'] = m2
|
||||||
MonEmail['Date'] = formatdate(localtime=True)
|
MonEmail['Date'] = formatdate(localtime=True)
|
||||||
if SEND:
|
if SEND:
|
||||||
Serveur_SMTP.sendmail('cableurs@lists.crans.org', m2, MonEmail.as_string())
|
with mail_module.ServerConnection() as conn:
|
||||||
|
conn.sendmail('cableurs@lists.crans.org', m2, MonEmail.as_string())
|
||||||
Serveur_SMTP.quit()
|
Serveur_SMTP.quit()
|
||||||
|
|
|
@ -2,7 +2,6 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import smtplib
|
|
||||||
import datetime
|
import datetime
|
||||||
import pytz
|
import pytz
|
||||||
from gestion import config
|
from gestion import config
|
||||||
|
@ -32,14 +31,15 @@ for adh in conn.search(ldap_filter):
|
||||||
continue
|
continue
|
||||||
mailaddrs.add(mail)
|
mailaddrs.add(mail)
|
||||||
|
|
||||||
|
print "Va envoyer le message à %s personnes." % len(mailaddrs)
|
||||||
if not SEND:
|
if not SEND:
|
||||||
print "Va envoyer le message à %s personnes. Mettre la variable SEND à True effectuer l'envoie" % len(mailaddrs)
|
print "Mettre la variable SEND à True effectuer l'envoi"
|
||||||
print "Appuyer sur entrée pour simuler la génération"
|
print "Appuyer sur entrée pour la génération"
|
||||||
raw_input()
|
raw_input()
|
||||||
|
|
||||||
echecs=[]
|
echecs=[]
|
||||||
conn_smtp=smtplib.SMTP('smtp.adm.crans.org')
|
with mail_module.ServerConnection() as conn_smtp:
|
||||||
for To in mailaddrs:
|
for To in mailaddrs:
|
||||||
cprint(u"Envoi du mail à %s" % To)
|
cprint(u"Envoi du mail à %s" % To)
|
||||||
params = {
|
params = {
|
||||||
'deadline': deadline,
|
'deadline': deadline,
|
||||||
|
@ -48,14 +48,13 @@ for To in mailaddrs:
|
||||||
}
|
}
|
||||||
mailtxt=mail_module.generate('carte_etudiant', params).as_string()
|
mailtxt=mail_module.generate('carte_etudiant', params).as_string()
|
||||||
try:
|
try:
|
||||||
|
# TODO DBG_MAIL
|
||||||
if SEND:
|
if SEND:
|
||||||
conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt)
|
conn_smtp.sendmail("cableurs@crans.org", (To,), mailtxt)
|
||||||
except:
|
except:
|
||||||
cprint(u"Erreur lors de l'envoi à %s " % To, "rouge")
|
cprint(u"Erreur lors de l'envoi à %s " % To, "rouge")
|
||||||
echecs.append(To)
|
echecs.append(To)
|
||||||
|
|
||||||
conn_smtp.quit()
|
|
||||||
|
|
||||||
if echecs:
|
if echecs:
|
||||||
print "\nIl y a eu des erreurs :"
|
print "\nIl y a eu des erreurs :"
|
||||||
print echecs
|
print echecs
|
||||||
|
|
|
@ -2,12 +2,13 @@
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
|
|
||||||
import sys
|
import sys
|
||||||
import smtplib
|
|
||||||
from gestion import config
|
from gestion import config
|
||||||
from gestion.affich_tools import cprint
|
from gestion.affich_tools import cprint
|
||||||
from gestion import mail
|
from gestion import mail
|
||||||
import lc_ldap.shortcuts
|
import lc_ldap.shortcuts
|
||||||
import gestion.config
|
import gestion.config
|
||||||
|
import gestiom.mail as mail_module
|
||||||
|
|
||||||
# Attention, si à True envoie effectivement les mails
|
# Attention, si à True envoie effectivement les mails
|
||||||
SEND=False
|
SEND=False
|
||||||
|
@ -35,8 +36,8 @@ print "Appuyer sur une touche pour continuer."
|
||||||
raw_input()
|
raw_input()
|
||||||
|
|
||||||
echecs=[]
|
echecs=[]
|
||||||
conn_smtp=smtplib.SMTP('smtp.adm.crans.org')
|
with mail_module.ServerConnection() as conn_smtp:
|
||||||
for To in mailaddrs:
|
for To in mailaddrs:
|
||||||
cprint(u"Envoi du mail à %s" % To)
|
cprint(u"Envoi du mail à %s" % To)
|
||||||
mailtxt=mail.generate('install-party', {'To':To}).as_string()
|
mailtxt=mail.generate('install-party', {'To':To}).as_string()
|
||||||
try:
|
try:
|
||||||
|
@ -46,8 +47,6 @@ for To in mailaddrs:
|
||||||
cprint(u"Erreur lors de l'envoi à %s " % To, "rouge")
|
cprint(u"Erreur lors de l'envoi à %s " % To, "rouge")
|
||||||
echecs.append(To)
|
echecs.append(To)
|
||||||
|
|
||||||
conn_smtp.quit()
|
|
||||||
|
|
||||||
if echecs:
|
if echecs:
|
||||||
print "\nIl y a eu des erreurs :"
|
print "\nIl y a eu des erreurs :"
|
||||||
print echecs
|
print echecs
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue