Merge branch 'master' into 'master'
Master Modification du script envoie mail, notification des échecs aux imprimeurs.
This commit is contained in:
commit
0cc22f0f7f
6 changed files with 50 additions and 3 deletions
|
@ -42,6 +42,7 @@ debut = fin - datetime.timedelta(minutes=10)
|
||||||
|
|
||||||
success=dict()
|
success=dict()
|
||||||
clubs=dict()
|
clubs=dict()
|
||||||
|
echecs=dict()
|
||||||
for job in jobs:
|
for job in jobs:
|
||||||
# Fin de parsing
|
# Fin de parsing
|
||||||
uid = job.find(attrs={'id': RE_JOB_NAME}).text
|
uid = job.find(attrs={'id': RE_JOB_NAME}).text
|
||||||
|
@ -52,10 +53,27 @@ for job in jobs:
|
||||||
# Hors intervalle: on drope
|
# Hors intervalle: on drope
|
||||||
if date < debut or date >= fin:
|
if date < debut or date >= fin:
|
||||||
continue
|
continue
|
||||||
if status != "Success":
|
|
||||||
# TODO prévenir les imprimeurs si une impression a échoué
|
|
||||||
continue
|
|
||||||
split = uid.split(u':')
|
split = uid.split(u':')
|
||||||
|
if status != "Success":
|
||||||
|
# Préviens les imprimeurs si une impression a échoué,
|
||||||
|
# pas de fioritures ici, boucle assez basique
|
||||||
|
if len(split) < 3:
|
||||||
|
name = 'Impression à la main'
|
||||||
|
task = uid
|
||||||
|
if name not in echecs:
|
||||||
|
echecs[name] = {'task': []}
|
||||||
|
echecs[name]['task'].append(task)
|
||||||
|
else:
|
||||||
|
nb = split[0]
|
||||||
|
name = split[1]
|
||||||
|
task = u':'.join(split[2:])
|
||||||
|
if name not in echecs:
|
||||||
|
echecs[name] = {'task': []}
|
||||||
|
echecs[name]['task'].append(task)
|
||||||
|
|
||||||
|
if status != "Sucess":
|
||||||
|
continue
|
||||||
|
# Dans le cas d'un success,
|
||||||
if len(split) < 3:
|
if len(split) < 3:
|
||||||
continue
|
continue
|
||||||
# Boucle qui s'exécute normalement si la typographie dans
|
# Boucle qui s'exécute normalement si la typographie dans
|
||||||
|
@ -122,6 +140,25 @@ for club in clubs:
|
||||||
#print mailtxt.as_string()
|
#print mailtxt.as_string()
|
||||||
#actually_sendmail(From, (To,), mailtxt)
|
#actually_sendmail(From, (To,), mailtxt)
|
||||||
|
|
||||||
|
for name in echecs:
|
||||||
|
ad = con.search(u'(uid=%s)' % name)
|
||||||
|
To = 'impression@lists.crans.org'
|
||||||
|
if ad <> []:
|
||||||
|
adh = ad[0]
|
||||||
|
tname = unicode(adh['prenom'][0]) + " " + unicode(adh['nom'][0])
|
||||||
|
else:
|
||||||
|
tname = name
|
||||||
|
mailtxt=mail.generate('mail_impression_ok', {
|
||||||
|
'To': To,
|
||||||
|
'From': From,
|
||||||
|
'tname': tname,
|
||||||
|
'taches': u', '.join(success[name]['task']),
|
||||||
|
})
|
||||||
|
#print mailtxt.as_string()
|
||||||
|
actually_sendmail(From, (To,), mailtxt)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if e>0:
|
if e>0:
|
||||||
print "Des problèmes sont survenus entre %s et %s" % (debut, fin)
|
print "Des problèmes sont survenus entre %s et %s" % (debut, fin)
|
||||||
print "Nombre total de mails envoyés :"
|
print "Nombre total de mails envoyés :"
|
||||||
|
|
2
gestion/mail/template/mail_impression_ratee/From/fr
Normal file
2
gestion/mail/template/mail_impression_ratee/From/fr
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
Les membres actifs du Crans <impression@lists.crans.org>
|
||||||
|
|
1
gestion/mail/template/mail_impression_ratee/Subject/fr
Normal file
1
gestion/mail/template/mail_impression_ratee/Subject/fr
Normal file
|
@ -0,0 +1 @@
|
||||||
|
Echec de travaux d'impression
|
1
gestion/mail/template/mail_impression_ratee/To/fr
Normal file
1
gestion/mail/template/mail_impression_ratee/To/fr
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{{To}}
|
1
gestion/mail/template/mail_impression_ratee/X-Mailer/fr
Normal file
1
gestion/mail/template/mail_impression_ratee/X-Mailer/fr
Normal file
|
@ -0,0 +1 @@
|
||||||
|
{{ mailer }}
|
5
gestion/mail/template/mail_impression_ratee/body/fr
Normal file
5
gestion/mail/template/mail_impression_ratee/body/fr
Normal file
|
@ -0,0 +1,5 @@
|
||||||
|
Rapport d'erreur d'impression :
|
||||||
|
|
||||||
|
Il semble que les impressions {{taches}} lancées par l'utilisateur {{tname}} n'aient pas abouti.
|
||||||
|
|
||||||
|
Le script de notification de fin d'impression.
|
Loading…
Add table
Add a link
Reference in a new issue