Wir entfernen die Unterstützung für IMAP in Discourse. Weitere Informationen finden Sie in diesem Beitrag: IMAP support for group inboxes - #39 by martin . ![]()
Wir freuen uns, eine Alpha-Version der IMAP-Unterstützung für Gruppen-Posteingänge vorstellen zu können. Diese Funktion ermöglicht es, IMAP-Anmeldedaten und Einstellungen pro Gruppe einzugeben, um Gruppen-Posteingänge mit einem E-Mail-Postfach zu synchronisieren. ![]()
![]()
![]()
Dies ist eine Funktion im Alpha-Stadium und daher noch nicht zu 100 % vollständig und ausgereift. Es ist sehr wahrscheinlich, dass Fehler auftreten. Wir pflegen sie derzeit nicht und nutzen sie nicht in der Produktion. Nutzung auf eigene Gefahr!
![]()
Vorteile
- Ihre Gruppe kann sofort mit der Nutzung von Discourse-Posteingängen beginnen, da alle Ihre vorhandenen E-Mails synchronisiert werden!

- Ihre Gruppe kann ihre Nachrichten zwischen Discourse und Ihrem E-Mail-Anbieter synchronisieren, sodass es keinen einzelnen Ausfallpunkt gibt. Personen können entweder vom E-Mail-Konto oder innerhalb von Discourse antworten, und alles wird synchronisiert.

- Sie müssen keine verrückten Weiterleitungsregeln von Ihrem E-Mail-Anbieter zu Ihrem Discourse-Eingangs-Postfach mehr einrichten.

- E-Mail-Labels werden mit Discourse-Tags synchronisiert, sodass alles ordentlich organisiert bleibt.

- Sie antworten Personen, die Ihre Gruppe per E-Mail kontaktieren, von der E-Mail-Adresse, die Sie eingerichtet haben, auch wenn Sie von Discourse aus antworten. Keine Verwirrung mehr!

Funktionen
- Alle ein- und ausgehenden E-Mails werden zwischen dem IMAP-Server und Discourse synchronisiert. Dabei werden basierend auf geparsten E-Mails entsprechende Themen und Post-Antworten erstellt. Antworten können entweder von Discourse oder vom IMAP-Server erstellt werden, und alles wird synchronisiert!
- E-Mails können entweder vom Discourse-Gruppenposteingang ODER vom E-Mail-Konto aus beantwortet werden.
- Tags, die auf das Discourse-Thema angewendet werden, werden als Labels erstellt und auf der IMAP-Serverseite auf die E-Mail angewendet (dies ist anbieterabhängig).
- Auf dem IMAP-Server archivierte E-Mails werden im Gruppenposteingang archiviert.
- Gruppen-Private-Nachrichten-Themen, die in Discourse archiviert werden, werden auf dem IMAP-Server archiviert.
- Auf dem IMAP-Server gelöschte E-Mails löschen das Thema im Gruppenposteingang.
- Gruppen-Private-Nachrichten-Themen, die in Discourse gelöscht werden, werden auf dem IMAP-Server gelöscht.
- E-Mails, die von Gruppen gesendet werden, bei denen diese Funktion aktiviert ist, haben als Antwortadresse denselben E-Mail-Nutzernamen, der in den IMAP-Einstellungen eingerichtet wurde.
Erste Schritte
Zunächst müssen einige Site-Einstellungen konfiguriert werden, bevor Sie diese Funktion für eine Gruppe einrichten können.
enable imapundenable smtpmüssen beide aktiviert sein. IMAP wird für die Synchronisierung mit Ihrem Mailserver verwendet, und SMTP wird zum Senden von E-Mails von Ihrem Mailserver verwendet.tagging enabledundallow staff to tag pms– Beide müssen aktiviert sein, da die Label-Synchronisierung Tags auf private Nachrichten anwendet.enable imap write– Muss aktiviert sein, wenn Änderungen in Discourse auf Ihrem Mailserver widergespiegelt werden sollen (z. B. Tags, Archivieren von Themen und Löschen von Themen).enable imap idle– Ermöglicht uns den Empfang von Live-Updates von Ihrem Mailserver, WENN Ihr Mailserver IDLE unterstützt. Dies beschleunigt die Übertragung von Änderungen von Ihrem E-Mail-Anbieter auf Discourse erheblich. Sie sollten dies aktivieren (Gmail unterstützt es beispielsweise). Wenn Sie alle Details wissen möchten, können Sie dazu im RFC für IDLE nachlesen.imap polling period mins– WennIDLEnicht unterstützt wird, ist dies die Anzahl der Minuten, die wir warten, bevor wir den IMAP-Server auf Änderungen prüfen. Es ist auch die Zeit, die wir zwischen dem Senden von Änderungen an den IMAP-Server von Discourse aus warten, wennenable imap writeaktiviert ist. Das Minimum beträgt 1 Minute.
Diese Einstellungen können bei ihren Standardwerten belassen und angepasst werden, wenn Sie Probleme mit der Synchronisierung feststellen:
imap polling old emails– Die maximale Anzahl alter (verarbeiteter) E-Mails, die bei jeder Abfrage eines IMAP-Postfachs aktualisiert werden (0 für alle).imap polling new emails– Die maximale Anzahl neuer (nicht verarbeiteter) E-Mails, die bei jeder Abfrage eines IMAP-Postfachs aktualisiert werden.imap batch import email– Die Mindestanzahl neuer E-Mails, die den Importmodus auslöst (deaktiviert Post-Benachrichtigungen).
Wenn Sie möchten, dass Labels/Tags mit dem IMAP-Server synchronisiert werden, müssen Sie die Site-Einstellungen tagging enabled und allow staff to tag pms aktivieren.
Als Nächstes müssen Sie in die Gruppe gehen, die Sie mit Ihrem IMAP-Server synchronisieren möchten, und die Einstellungen ausfüllen.
Diese Einstellungen sind anbieterspezifisch. Weitere Einzelheiten finden Sie weiter unten. Nachdem Sie die Einstellungen und Anmeldedaten eingegeben haben, klicken Sie auf „Änderungen speichern". Wir validieren die Anmeldedaten dann gegen die Server des IMAP-Anbieters. Bei Erfolg wird die Liste der Postfächer aufgefüllt, und Sie müssen auswählen, welches Sie synchronisieren möchten (Hinweise dazu sind ebenfalls anbieterspezifisch):
Wenn die Validierung der Anmeldedaten nicht erfolgreich war, wird eine Fehlermeldung auf der Seite angezeigt. Um es klarzustellen: Der eingegebene SMTP-Server wird verwendet, um E-Mails im Namen des unter Benutzername & Passwort eingegebenen Kontos zu senden, nicht der für Massen-E-Mails konfigurierte Haupt-SMTP von Discourse.
Schließlich müssen Sie in Ihrer app.yml-Datei DISCOURSE_ENABLE_EMAIL_SYNC_DEMON: true im Abschnitt env hinzufügen und ./launcher rebuild ausführen. Dadurch wird der Hintergrundworker gestartet und beginnt mit dem Synchronisieren von E-Mails! ![]()
Anbieterspezifische Informationen
Gmail
Sie müssen ein App-Passwort generieren, andernfalls müssen Sie den „Zugriff weniger sicherer Apps" aktivieren, den Google ohnehin irgendwann abschaffen wird. Verwenden Sie dieses Passwort anstelle Ihres Gmail-Kennworts in den IMAP-Einstellungen. Weitere Details finden Sie unter Sign in with app passwords - Gmail Help . 
- Stellen Sie sicher, dass Sie diese Einstellungen für SMTP und IMAP verwenden:
- IMAP-Port: 987
- SMTP-Port: 587
- IMAP-Server: imap.gmail.com
- SMTP-Server: smtp.gmail.com
- Verwenden Sie SSL für SMTP und IMAP
- Es wird dringend empfohlen (bald eine UI-Funktion), dass Sie nur das Postfach „[Gmail]/Alle E-Mails" zur Synchronisierung auswählen.
- Wir löschen E-Mails in Gmail nicht sofort, sondern verschieben sie nur in den Papierkorb, wenn das Thema in Discourse gelöscht wird. Die „30-Tage"-Löschfunktion in Gmail übernimmt dann den Rest.
- Tags, die auf Discourse-Themen angewendet werden, erstellen Labels in Gmail und wenden sie auf E-Mail-Threads an. Labels in Gmail sind auch IMAP-Postfächer!
Einschränkungen
Dies ist eine Funktion im Alpha-Stadium und daher noch nicht zu 100 % vollständig und ausgereift. Daher gelten derzeit folgende Einschränkungen:
- Nur Gmail wird derzeit als IMAP-Anbieter unterstützt. Wir haben einige generische IMAP-Funktionen, aber es ist nicht garantiert, dass sie funktionieren. Outlook Online ist unser nächstes großes Ziel für die Unterstützung.
- Das Wiederherstellen gelöschter E-Mails aus dem Gmail-Papierkorb und das Spiegeln des Status in Discourse ist derzeit fehleranfällig.
Es wird nicht empfohlen, das Synchronisierungs-Postfach zu ändern, nachdem E-Mails bereits synchronisiert wurden. Dies kann zu vielen seltsamen Problemen führen. 
- Pro Gruppe kann nur ein Postfach synchronisiert werden.
- Die Kommunikation zwischen Gruppen ist Neuland und wird nicht gut funktionieren (z. B. das Senden einer E-Mail von support@yoursite.com an team@yoursite.com, wenn jede dieser E-Mails für eine andere Gruppe eingerichtet ist).
Da es sich um eine Alpha-Funktion handelt, können es auch andere subtile Fallstricke und Ecken und Kanten geben.
Feedback & Fahrplan
Wir würden uns über Feedback von allen freuen, die diese Funktion mit Gmail nutzen. Ich werde diejenige sein, die sich um die Behebung von Fehlern/Problemen kümmert. Das Debugging ist derzeit etwas schwierig, aber ich arbeite daran!
Als Nächstes werde ich an folgenden Punkten arbeiten:
- Verbesserung des Debuggings, um IMAP-Protokolle einfacher einsehen und Fehlerquellen identifizieren zu können.
- Verbesserung der Gruppen-E-Mail-Schnittstelle, um die aus Gmail auswählbaren Postfächer einzuschränken und das Ändern von Postfächern zu erschweren/unzulässig zu machen.
- Validierung, um die Verwendung derselben IMAP-Details für mehrere Gruppen zu verhindern.
- Mögliche Verbesserungen daran, wie die Gruppen-IMAP-Einstellungen gespeichert werden, und eine bessere Benutzererfahrung für die Validierung von Anmeldedaten.
- Outlook-Unterstützung.
Während wir die Mängel beheben, ist diese Funktion derzeit für unsere gehosteten Kunden nicht verfügbar.
Besonderer Dank 
Sowohl @dan als auch @j.jaffeux sind die Hauptbeitragsleistenden dieses riesigen Features, das über einen langen Zeitraum entwickelt wurde. Ohne ihre hervorragende Arbeit hätte ich das Feature nicht an diesen Punkt bringen und diese Ankündigung machen können
.

