CroceRossaCatania / gaia

G.A.I.A. è l'acronimo di "Gestione Avanzata ed Integrata dell'Anagrafica"... [cit. Alfio Musmarra]
GNU General Public License v3.0
30 stars 14 forks source link

[email] Comunicazioni su Gaia #1671

Closed AlfioEmanueleFresta closed 8 years ago

AlfioEmanueleFresta commented 9 years ago

I problemi attuali

  1. Le comunicazioni con destinatari che sono utenti su Gaia sprovvisti di indirizzo email, falliscono. La classe Email genera un'eccezione e il messaggio non viene salvato su Gaia (MongoDB). Questo causa parecchi problemi (es. #1642);
  2. Non abbiamo un sistema che ci permette di assicurarci dell'avvenuta consegna di un messaggio. Le email sono notoriamente un sistema inaffidabile per l'invio della comunicazione (la posta certificata e' da escludere perche' gli utenti ne sono sprovvisti);

    L'ispirazione

Sono iscritto all'HMRC (credo equivalente dell'Agenzia delle Entrate italiana). Hanno necessita' di inviarmi comunicazioni importanti che io non possa dichiarare di aver perso, smarrito o non aver mai visto (es. importi di tasse da pagare). La loro soluzione si basa sui seguenti punti:

Una serie di vantaggi sono scaturiti dall'applicazione della soluzione che sto proponendovi:

  1. Possibilita' di utilizzare Gaia come sistema di comunicazione ufficiale per tutti i Comitati che hanno abbracciato il progetto. Questo, ovviamente, deve essere supportato da opportuno regolamento e da un sistema che diventa piu' critico, ma sono confidente nella possibilita';
  2. Iscriversi a Gaia diventa ora piu' importante che mai, in quanto se non mi iscrivo non ricevo le email reminder;
  3. Anche se l'utente non ha ancora inserito un indirzzo email (es. mai effettuato l'accesso), le comunicazioni vengono comunque memorizzate. Quando l'utente effettuera' l'accesso, avra' a disposizione lo storico di tutte le comunicazioni ricevute fino ad allora;
  4. Riduzione in quantita' di traffico dati in uscita in picco nelle email di massa: in questa soluzione, infatti, il corpo del messaggio e' troncato nell'email e disponibile in pieno solo nel sito web. Gli allegati, inoltre, vengono conservati sul server web e non distribuiti tramite protocollo SMTP;
  5. Questo ci permette di avere un migliore sistema di allegati, per esempio possibilita' di avere allegati nei messaggi di massa con contatore degli scaricamenti (addirittura potremmo avere un elenco dei volontari che hanno scaricato ogni allegato, se utile in qualche caso d'uso);
  6. Questo sistema porta l'utente a entrare su Gaia piu' spesso - con tutti i vantaggi che ne derivano.

    Cambiamenti da effettuare

Per realizzare questo sistema, e' necessario effettuare una serie di cambiamenti:

  1. Rendere affidabile e permanente lo storage dello storico messaggi. In questo momento questo significa una delle due cose:
    • Iniziare una serie di backup a granularita' maggiore del database mongodb; oppure
    • Spostare le email su MySQL, che non dovrebbe essere un problema data l'interfaccia simile tra Entita e MEntita;
  2. Adeguare il sistema di storage per gli allegati (che dovranno permanere piu' a lungo, non so se in modo indeterminato o una cosa tipo 60 giorni). S3?

    Feedback

Vorrei conoscere il parere di @ico88 per lo sviluppo e di @PaoloGiustiniani specialmente in merito per i cambiamenti strutturali (mongodb vs mysql), e di tutti in merito all'idea.

ico88 commented 9 years ago

@AlfioEmanueleFresta sono concorde su tutto, mi preoccupa un pò la memorizzazione, backup degli allegati. Dobbiamo prevedere forse un sistema di quote perchè se vogliamo mantenre storico i giorni non mi sembrano un buon discriminante purtroppo. Che dite ?

AlfioEmanueleFresta commented 9 years ago

La mia idea era storico illimitato nel tempo, con allegati che scadono dopo 60 giorni.

ico88 commented 9 years ago

Quindi solo l'allegato scade, mmm, se avvisiamo l'utente si può fare