Skip to content

Notification: nuova entità per poter fare analisi sulle notifiche già mandate in precedenza

Daniele Scasciafratte requested to merge 76-notifiche into master

Ref #76

Situazione attuale

Le notifiche sono mandate in diverse situazioni:

  • dai cron
  • dagli observer
  • ...

Premettendo che gli observer devono lanciare una email immediata (e questo già funziona correttamente in generale),

Invece, le notifiche dai cron sono difficili da rendere più frequenti, perché non abbiamo uno storico delle notifiche già mandate in precedenza e, aumentando la frequenza, ora come ora, causeremmo frequenti notifiche doppie e fastidiose per i soci.

Esempio: abbiamo già un cron che verifica lo stato quote, appunto, hardcodato in una data specifica, per evitare notifiche doppie:

https://gitlab.com/ItalianLinuxSociety/ilsmanager/-/blob/6a10157b0511d4ec9c7f60fb8ab6bae1e37457e3/app/Console/Kernel.php#L34

Fra essi c'è questo command che "Invalida le richieste pendenti da più di 60 giorni senza quota pagata" (senza notifiche intermedie):

https://gitlab.com/ItalianLinuxSociety/ilsmanager/-/blob/6a10157b0511d4ec9c7f60fb8ab6bae1e37457e3/app/Console/Commands/DropRequests.php

Situazione proposta

Espandere DropRequests per notificare i nuovi soci (status = pending) senza quota, affinché ricevino almeno un sollecito prima di essere scartati (dropped).

#76

Requisito: senza intasarli di notifiche, però.

Possibili miglioramenti futuri

Si potrebbe modificare il command checkFees per essere eseguito più volte durante l'anno. Questo però merita ulteriori chiarimenti perché non c'entra nulla con #76.

Appunti

Altri appunti (eventualmente rimuovere quelli fuorvianti sugli observer):

Solo nel caso della verifica quote manda un email, mentre al cambio stato utente https://gitlab.com/ItalianLinuxSociety/ilsmanager/-/blob/master/app/Observers/UserObserver.php manda le notifiche quindi gli utenti ricevono le email già. Nel codice abbiamo le email e i template vengono chiamati qui al cambio stato, solo se questo effettivamente cambia ma se noi li teniamo con le quote ferme al 2022 non ricevono nessuna notifica perchè non cambia il loro stato e la notifica delle quote avviene solo il 10 gennaio di ogni anno (che manda l'email).

Direi che a questo punto dobbiamo ragionare un attimo su quello che abbiamo già e sul perchè gli utenti non vengono notificati, perchè il codice che manda le email c'è e secondo me ricevono le email quindi dobbiamo fare delle verifiche.

Sistemerei anche il seeder per avere un utente che questi comandi possano trovare che non è in regola con le quote.

Edited by Valerio Bozzolan

Merge request reports