diff --git a/gestion/config/mails/upload.py b/gestion/config/mails/upload.py index a23f4a94..68aaf6a6 100644 --- a/gestion/config/mails/upload.py +++ b/gestion/config/mails/upload.py @@ -1,18 +1,55 @@ #!/usr/bin/env python # -*- coding: utf-8 -*- +from email.header import Header + """ Templates des mails envoyés en cas d'upload. """ #: Envoyé à l'adhérent en cas de dépassement de la limite soft -message_soft = u"""From: %(from)s -To: %(to)s -Subject: [CRANS] Attention !! +message_soft = u"""From: %%(from)s +To: %%(to)s +Subject: %(subject)s Content-Type: text/plain; charset="utf-8" -Bonjour %(proprio)s, +Bonjour %%(proprio)s, Nous t'informons que ta (tes) machine(s) envoie(nt) une quantité -importante de données vers l'extérieur (%(upload)s Mo en 24 heures). +importante de données vers l'extérieur (%%(upload)s Mo en 24 heures). + +*Ce message t'est envoyé à titre informatif, il ne te sanctionne pas.* + +Il signifie que tu as envoyé plus de 300 Mo au cours des dernières 24 +heures. Cela peut venir du fait que, *par exemple*, tu essaies +d'envoyer des fichiers de grosse taille à l'extérieur de la zone +crans, ou encore que tu as fait une utilisation importante de +logiciels envoyant une très grande quantité de petites données +(vidéo-conférence par exemple). Il peut y avoir d'autres raisons. + + +Si cela continuait, et que tu dépassais la limite acceptable des 3789 +Mo sur 24 heures, ton débit serais automatiquement fortement limité pour +une durée de 24 heures. Il t'appartient donc de surveiller cela de +plus près et de faire en sorte que tes machines n'uploadent pas de +manière excessive à l'avenir. + + +Pour plus d'informations, tu peux consulter la page: +http://wiki.crans.org/VieCrans/DéconnexionPourUpload + +Si tu as des questions, contacte disconnect@crans.org + +N.B. : L'upload consiste en l'envoi de données vers des machines n'étant +pas branchées sur le CRANS. + +--\u0020 +Disconnect team""" % {'subject': Header('[Cr@ns] Attention !', 'utf-8')} + + +class Message_adherent_soft(object): + template = u"""Bonjour %%(proprio)s, + +Nous t'informons que ta (tes) machine(s) envoie(nt) une quantité +importante de données vers l'extérieur (%%(upload)s Mo en 24 heures). *Ce message t'est envoyé à titre informatif, il ne te sanctionne pas.* @@ -41,17 +78,21 @@ pas branchées sur le CRANS. --\u0020 Disconnect team""" - + + def __init__(self): + self.subject = u"[Cr@ns] Attention !" + + #: Envoyé à l'adhérent en cas de dépassement de la limite hard -message_hard = u"""From: %(from)s -To: %(to)s -Subject: [CRANS] Limitation temporaire de ton débit montant. +message_hard = u"""From: %%(from)s +To: %%(to)s +Subject: %(subject)s Content-Type: text/plain; charset="utf-8" -Bonjour %(proprio)s, +Bonjour %%(proprio)s, Ton débit à été temporairement limité en raison de l'envoi trop -important de données vers l'extérieur (%(upload)s Mo en 24h). +important de données vers l'extérieur (%%(upload)s Mo en 24h). Si cela devait se renouveler trop souvent, tu serais déconnecté complètement pour une durée plus importante. @@ -67,7 +108,7 @@ N.B. : L'upload consiste en l'envoi de données vers des machines n'étant pas branchées sur le CRANS. --\u0020 -Disconnect team""" +Disconnect team""" % {'subject': Header('[Cr@ns] Limitation temporaire de ton débit montant.', 'utf-8')} #: Envoyé à la ML disconnect@ en cas de dépassement de la limite soft (désactivé) message_disconnect_soft = u"""From: %(from)s @@ -86,7 +127,7 @@ To: %(to)s Subject: %(proprio)s a =?iso-8859-1?Q?=E9t=E9=20brid=E9?= Content-Type: text/plain; charset="utf-8" -%(proprio)s (aid=%(aid)s) a été limité en débit montant du fait d'un +%(proprio)s (%(id)s) a été limité en débit montant du fait d'un upload excessif (%(upload)s Mo). Ses machines ont été aperçues pour la dernière fois à ces endroits : diff --git a/surveillance/deconnexion.py b/surveillance/deconnexion.py index d7ec01b0..4824a244 100755 --- a/surveillance/deconnexion.py +++ b/surveillance/deconnexion.py @@ -254,7 +254,11 @@ for elupload, eltype, elid in uploadeurs: # On envoie un mail à disconnect ################################ if upload.disconnect_mail_hard: - corps = config.mails.upload.message_disconnect_hard % {'from': upload.expediteur, 'to': upload.expediteur, 'upload': elupload, 'proprio': proprio.Nom(), 'mdc': mdcf, 'chambre': proprio.chbre(), 'aid':proprio.id()} + if eltype == "club": + theid = "cid=" + else: + theid = "aid=" + corps = config.mails.upload.message_disconnect_hard % {'from': upload.expediteur, 'to': upload.expediteur, 'upload': elupload, 'proprio': proprio.Nom(), 'mdc': mdcf, 'chambre': proprio.chbre(), 'id': theid + proprio.id()} corps = corps.encode('utf-8') mail.sendmail(upload.expediteur, upload.expediteur, corps)