This commit is contained in:
Ludovic Stephan 2016-09-26 15:31:09 +02:00
parent 8a3f4b7431
commit 15e755334d
3 changed files with 16 additions and 0 deletions

View file

@ -14,6 +14,7 @@ class Command(BaseCommand):
def handle(self, *args, **options): def handle(self, *args, **options):
now = timezone.now() now = timezone.now()
self.stdout.write(now)
reventes = SpectacleRevente.objects.all() reventes = SpectacleRevente.objects.all()
for revente in reventes: for revente in reventes:
# Check si < 24h # Check si < 24h
@ -22,11 +23,14 @@ class Command(BaseCommand):
now >= revente.date + timedelta(minutes=15) and \ now >= revente.date + timedelta(minutes=15) and \
not revente.notif_sent: not revente.notif_sent:
revente.mail_shotgun() revente.mail_shotgun()
self.stdout.write("Mail de disponibilité immédiate envoyé")
# Check si délai de retrait dépassé # Check si délai de retrait dépassé
elif (now >= revente.date + timedelta(hours=1) and elif (now >= revente.date + timedelta(hours=1) and
not revente.notif_sent): not revente.notif_sent):
revente.send_notif() revente.send_notif()
self.stdout.write("Mail d'inscription à une revente envoyé")
# Check si tirage à faire # Check si tirage à faire
elif (now >= revente.expiration_time and elif (now >= revente.expiration_time and
not revente.tirage_done): not revente.tirage_done):
revente.tirage() revente.tirage()
self.stdout.write("Tirage effectué, mails envoyés")

View file

@ -7,3 +7,4 @@ DBNAME="cof_gestion"
DBPASSWD="4KZt3nGPLVeWSvtBZPSM3fSzXpzEU4" DBPASSWD="4KZt3nGPLVeWSvtBZPSM3fSzXpzEU4"
19 */12 * * * date >> /vagrant/rappels.log ; python /vagrant/manage.py sendrappels >> /vagrant/rappels.log 2>&1 19 */12 * * * date >> /vagrant/rappels.log ; python /vagrant/manage.py sendrappels >> /vagrant/rappels.log 2>&1
*/5 * * * * python /vagrant/manage.py manage_revente >> /vagrant/reventes.log 2>&1

View file

@ -14,3 +14,14 @@ envoyés).
- Garde les logs peut être une bonne idée. - Garde les logs peut être une bonne idée.
Exemple : voir le fichier `provisioning/cron.dev`. Exemple : voir le fichier `provisioning/cron.dev`.
## Gestion des mails de revente
Il faut effectuer très régulièrement la commande `manage_reventes` de GestioCOF,
qui gère toutes les actions associées à BdA-Revente : envoi des mails de notification,
tirages.
- Pour l'instant un délai de 5 min est hardcodé
- Garde des logs ; ils vont finir par être assez lourds si on a beaucoup de reventes.
Exemple : provisioning/cron.dev