Stiamo rimuovendo il supporto per IMAP in Discourse. Consulta questo post per i dettagli: IMAP support for group inboxes - #39 by martin . ![]()
Siamo lieti di presentare una versione alpha del supporto IMAP per le caselle di posta dei gruppi. Questa funzionalità permette di inserire le credenziali e le impostazioni IMAP su base per gruppo, sincronizzando le caselle di posta dei gruppi con una casella di posta elettronica. ![]()
![]()
![]()
Questa è una funzionalità in fase alpha e, di conseguenza, non è al 100% completa e rifinita. È molto probabile che presenti malfunzionamenti; al momento non la stiamo mantenendo né utilizzandola in produzione. Usala a tuo rischio e pericolo!
![]()
Vantaggi
- Il tuo gruppo può iniziare subito a utilizzare le caselle di posta di Discourse, poiché tutta la tua posta esistente verrà sincronizzata!

- Il tuo gruppo può sincronizzare i messaggi tra Discourse e il tuo provider di posta elettronica, eliminando il singolo punto di guasto. Le persone possono rispondere dall’account email o direttamente da Discourse e tutto verrà sincronizzato

- Non dovrai più impostare regole di inoltro complicate dal tuo provider di posta elettronica alla casella di posta in arrivo di Discourse.

- Le etichette della posta elettronica verranno sincronizzate con i tag di Discourse, mantenendo tutto ordinato

- Risponderai alle persone che scrivono al tuo gruppo dall’indirizzo email che hai configurato, anche se rispondi da Discourse. Niente più confusione!

Funzionalità
- Tutta la posta in arrivo e in uscita verrà sincronizzata tra il server IMAP e Discourse, creando gli argomenti e le risposte ai post appropriati in base alle email analizzate. Le risposte possono essere create da Discourse o dal server IMAP e tutto verrà sincronizzato!
- Le email possono essere risposte dalla casella di posta del gruppo di Discourse OPPURE dall’account email.
- I tag applicati all’argomento di Discourse verranno creati come etichette e applicati all’email sul server IMAP (questo dipende dal provider).
- Le email archiviate sul server IMAP verranno archiviate nella casella di posta del gruppo.
- Gli argomenti di messaggi privati di gruppo archiviati su Discourse verranno archiviati sul server IMAP.
- Le email eliminate sul server IMAP elimineranno l’argomento nella casella di posta del gruppo.
- Gli argomenti di messaggi privati di gruppo eliminati su Discourse verranno eliminati sul server IMAP.
- Le email inviate dai gruppi con questa funzionalità abilitata avranno l’indirizzo “rispondi a” impostato sullo stesso nome utente email configurato nelle impostazioni IMAP.
Per iniziare
Prima di tutto, ci sono alcune impostazioni del sito che devi configurare prima di poter impostare questa funzionalità su un gruppo.
enable imapeenable smtpdevono essere entrambi abilitati. IMAP viene utilizzato per la sincronizzazione con il tuo server di posta, mentre SMTP viene utilizzato per inviare email dal tuo server di posta.tagging enabledeallow staff to tag pms- Devono essere entrambi abilitati, poiché la sincronizzazione delle etichette applica i tag ai messaggi privati.enable imap write- Deve essere abilitato se desideri che le modifiche apportate in Discourse si riflettano sul tuo server di posta (ad esempio tag, archiviazione e cancellazione di argomenti).enable imap idle- Ci permette di ricevere aggiornamenti in tempo reale dal tuo server di posta SE il tuo server supporta IDLE. Questo accelera notevolmente il riflesso delle modifiche dal tuo provider di posta a Discourse. Dovresti attivarlo (ad esempio, Gmail lo supporta). Se vuoi tutti i dettagli tecnici, puoi leggere l’RFC per IDLE.imap polling period mins- SeIDLEnon è supportato, questo è il numero di minuti che attendiamo prima di controllare il server IMAP per le modifiche. È anche il tempo che attendiamo tra l’invio delle modifiche al server IMAP da Discourse seenable imap writeè abilitato. Il minimo è 1 minuto.
Queste impostazioni possono essere lasciate ai valori predefiniti e modificate se riscontri problemi con la sincronizzazione:
imap polling old emails- Il numero massimo di email vecchie (elaborate) da aggiornare ogni volta che viene interrogata una casella IMAP (0 per tutte).imap polling new emails- Il numero massimo di email nuove (non elaborate) da aggiornare ogni volta che viene interrogata una casella IMAP.imap batch import email- Il numero minimo di email nuove che attivano la modalità di importazione (disabilita gli avvisi dei post).
Se desideri che le etichette/tag vengano sincronizzate con il server IMAP, devi abilitare le impostazioni del sito tagging enabled e allow staff to tag pms.
Successivamente, devi accedere al gruppo che desideri sincronizzare con il tuo server IMAP e compilare le impostazioni.
Queste impostazioni sono specifiche del provider; consulta i dettagli qui sotto. Una volta inserite le impostazioni e le credenziali, fai clic su “Salva modifiche” e verificheremo le credenziali contro i server del provider IMAP. In caso di successo, l’elenco delle caselle di posta verrà popolato e dovrai scegliere quella che desideri sincronizzare (le istruzioni sono anch’esse specifiche del provider):
Se la validazione delle credenziali non va a buon fine, verrà visualizzato un messaggio di errore nella pagina. Per essere chiari, il server SMTP inserito verrà utilizzato per inviare email a nome dell’account inserito sotto nome utente e password, non del server SMTP principale di Discourse configurato per le email in blocco.
Infine, all’interno del tuo file app.yml dovrai aggiungere DISCOURSE_ENABLE_EMAIL_SYNC_DEMON: true nella sezione env ed eseguire ./launcher rebuild. Questo attiverà il worker in background per avviarsi e iniziare a sincronizzare le email! ![]()
Informazioni specifiche per il provider
Gmail
Devi generare una password per l’applicazione, altrimenti devi attivare l’“Accesso a app meno sicure”, che Google sta comunque eliminando a breve. Utilizza questa password al posto della password del tuo account Gmail nelle impostazioni IMAP. Consulta Sign in with app passwords - Gmail Help per ulteriori dettagli. 
- Assicurati di utilizzare queste impostazioni per SMTP e IMAP:
- Porta IMAP: 987
- Porta SMTP: 587
- Server IMAP: imap.gmail.com
- Server SMTP: smtp.gmail.com
- Utilizza SSL sia per SMTP che per IMAP
- Si consiglia vivamente (e presto sarà una funzionalità dell’interfaccia) di selezionare solo la casella di posta “[Gmail]/All Mail” per la sincronizzazione.
- Non eliminiamo immediatamente le email su Gmail, ma le spostiamo solo nel cestino quando l’argomento viene eliminato in Discourse. La funzionalità di eliminazione “30 giorni” all’interno di Gmail prenderà il sopravvento da lì.
- I tag applicati agli argomenti di Discourse creeranno Etichette su Gmail e le applicheranno ai thread di posta elettronica. Le etichette su Gmail sono anche caselle di posta IMAP!
Limitazioni
Questa è una funzionalità in fase alpha e, di conseguenza, non è al 100% completa e rifinita. Pertanto, al momento si applicano le seguenti limitazioni:
- Attualmente solo Gmail è supportato come provider IMAP. Abbiamo alcune funzionalità IMAP generiche, ma non è garantito che funzionino. Outlook Online è il nostro prossimo grande obiettivo per il supporto.
- Il ripristino delle email eliminate dal Cestino di Gmail e il riflesso dello stato in Discourse è attualmente instabile.
Cambiare la casella di posta sincronizzata dopo che le email sono già state sincronizzate non è consigliato e può causare molti problemi strani. 
- È possibile sincronizzare solo una casella di posta per gruppo.
- La comunicazione da gruppo a gruppo è un territorio inesplorato e non funzionerà bene (ad esempio, inviare email a team@yoursite.com da support@yoursite.com se ciascuna di queste email è configurata per un gruppo diverso).
Potrebbero esserci anche altri piccoli problemi e imperfezioni, dato che questa è una funzionalità alpha.
Feedback e Roadmap
Apprezziamo molto il feedback di chiunque stia utilizzando questa funzionalità con Gmail. Sarò io a lavorare per risolvere eventuali bug o problemi. Il debug è un po’ complicato al momento, ma ci sto lavorando!
Le prossime cose su cui lavorerò:
- Migliorare il debug per rendere più facile visualizzare i log IMAP e capire cosa va storto.
- Migliorare l’interfaccia delle email del gruppo per limitare le caselle di posta selezionabili da Gmail e per scoraggiare/non permettere la modifica delle caselle di posta.
- Validazione per impedire l’uso delle stesse credenziali IMAP per più gruppi.
- Possibili miglioramenti su come vengono memorizzate le impostazioni IMAP del gruppo e un’esperienza utente migliore per la validazione delle credenziali.
- Supporto per Outlook.
Attualmente, mentre risolviamo i problemi, questa funzionalità non è disponibile per i nostri clienti in hosting.
Ringraziamenti speciali 
Sia @dan che @j.jaffeux sono i principali contributori di questa enorme funzionalità, su cui è stato lavorato per tanto tempo. Senza il loro straordinario lavoro non sarei stato in grado di portare la funzionalità a questo punto e di fare questo annuncio
.

