VERP zur Behandlung von zurückgesendeten E-Mails konfigurieren

Einrichtung der Bounce-Verarbeitung

Discourse verwendet die Technik des Variable envelope return path (VERP), um zurückgesendete E-Mails zu verarbeiten.

Um VERP zu aktivieren, setzen Sie die Website-Einstellung „reply by email address“ auf eine E-Mail-Adressvorlage, die das Zeichen + verwendet. Die Standardeinstellung
replies+%{reply_key}@discourse.example.com
… funktioniert einwandfrei. Wenn Sie Ihren eigenen oder den E-Mail-Server Ihres Unternehmens verwenden, dann war’s das schon :tada:

Ihre Discourse-Instanz muss in der Lage sein, an diese Adresse gesendete E-Mails zu empfangen. Dies sollte über POP funktionieren, aber wir empfehlen dringend Eingehende E-Mail-Direktzustellung für selbst gehostete Websites

Wenn Sie jedoch einen externen E-Mail-Dienst verwenden, müssen Sie VERP aktivieren oder deren Webhooks wie folgt aktivieren:

MailGun

  1. Melden Sie sich bei MailGun an und rufen Sie Ihr Dashboard auf; suchen Sie in der linken Spalte nach der Seite SendingWebhooks.
  2. Wählen Sie die Registerkarte Configuration und kopieren Sie den HTTP signing key
  3. Setzen Sie in Ihrer Discourse-Site die Website-Einstellung Mailgun API key auf Ihren HTTP signing key
  4. Kehren Sie zu Mailgun zurück, klicken Sie auf die Schaltfläche Add webhook (wählen Sie Domain-level) und setzen Sie die HTTP post URL auf https://your.discourse/webhooks/mailgun. Testen Sie dies.
  5. Wählen Sie sowohl Permanent Failure als auch Temporary failure, überprüfen Sie die Domain und erstellen Sie dann den Webhook.

SendGrid

  • Melden Sie sich bei SendGrid an und navigieren Sie zu Mail Settings
  • Erweitern Sie die Einstellung Event Webhook und aktivieren Sie sie, falls sie noch nicht aktiviert ist
  • Klicken Sie auf edit, um die HTTP POST URL auf http://your.discourse/webhooks/sendgrid zu setzen
  • Stellen Sie sicher, dass Sie die folgenden 3 Aktionen ausgewählt haben: Dropped, Deferred und Bounced
  • Speichern Sie Ihre Änderungen, indem Sie auf das :white_check_mark: klicken

MailJet

  • Melden Sie sich bei MailJet an und navigieren Sie zu event tracking
  • Aktivieren Sie das Ereignis bounce
  • Setzen Sie die endpoint URL auf http://your.discourse/webhooks/mailjet
  • Aktivieren Sie das Quadrat :white_medium_square: in der Spalte group events
  • Klicken Sie auf die Schaltfläche save

SparkPost

  • Melden Sie sich bei SparkPost an und navigieren Sie zu Ihrem Dashboard.
  • Wählen Sie Account aus den Menüsymbolen auf der linken Seite
  • Wählen Sie Webhooks aus dem Menü ( SparkPost )
  • Wählen Sie New Webhook.
  • Geben Sie einen aussagekräftigen Wert für Webhook Name ein, z. B. Discourse Forum
  • Geben Sie als Target URL http://your.discourse/webhooks/sparkpost ein
  • Wählen Sie Add Webhook.

Amazon Simple Email Service (AWS SES)

  • Auf Discourse:
    • Setzen Sie reply by email enabled und reply by email address gemäß dem Anfang von OP
    • Setzen Sie manual polling enabled
  • Bei AWS:
    • Erstellen Sie ein SNS Topic
    • Erstellen Sie ein SNS Subscription für das erstellte Topic als HTTPS, das auf https://your.discourse/webhooks/aws zeigt
    • Gehen Sie zu SES → Verified Identities, wählen Sie Ihre Site-Domain aus und gehen Sie zum Tab Benachrichtigungen. Bearbeiten Sie Ihre Feedback-Benachrichtigungen. Setzen Sie das Bounce-Feedback und das Complaint-Feedback auf das SNS Topic, das Sie gerade erstellt haben

Postmark

  • Melden Sie sich bei Postmark an und wählen Sie dann den Server aus, der zum Senden von Discourse-E-Mails verwendet wird
  • Wählen Sie den Nachrichtenstream aus, der mit Discourse-E-Mails verknüpft ist, typischerweise Default Transactional Stream
  • Klicken Sie auf Webhooks
  • Klicken Sie auf Add webhook
  • Geben Sie als Webhook URL http://your.discourse/webhooks/postmark ein
  • Unter Which events should we send? aktivieren Sie Delivery und Spam complaint
  • Scrollen Sie nach unten und klicken Sie auf Save webhook

Testen von Bounces

Um sicherzustellen, dass alles funktioniert, gehen Sie wie folgt vor:

  1. Registrieren Sie ein neues Konto auf Ihrer Website mit einer offensichtlich falschen E-Mail-Adresse, z. B. bademail@obviously-invalid-domain.com oder clearly.nobody.has.this.email.address@gmail.com
  2. Warten Sie eine Weile, bis die E-Mails vollständig zurückgesendet wurden (prüfen Sie bei Bedarf die Protokolle Ihres Anbieters – sie werden normalerweise unter der Protokollebene „warn“ oder „error“ angezeigt)
  3. Überprüfen Sie /admin/email/bounced auf Ihrer Website, um zu bestätigen, dass der Bounce erfasst wurde. Beachten Sie, dass dies bis zu 48 Stunden dauern kann, abhängig von der Anzahl der Wiederholungsversuche und der spezifischen Logik Ihres E-Mail-Anbieters.

Konfigurieren von Bounces

Die Bounce-Verarbeitung kann mit diesen Website-Einstellungen angepasst werden

  • soft bounce score: Punkte, die der „Bounce-Score“ des Benutzers hinzugefügt werden, wenn wir einen temporären Bounce von seiner E-Mail-Adresse erhalten
  • hard bounce score: Punkte, die dem „Bounce-Score“ des Benutzers hinzugefügt werden, wenn wir einen permanenten (oder unbekannten) Bounce von seiner E-Mail-Adresse erhalten
  • reset bounce score after days: Anzahl der Tage, an denen wir keinen Bounce erhalten müssen, bevor wir den „Bounce-Score“ des Benutzers wieder auf 0 zurücksetzen können
  • bounce score threshold: Punktschwelle, bei der wir aufhören, nicht dringende E-Mails an den Benutzer zu senden

Zuletzt geprüft von @SaraDev am 2022-07-19T20:00:00Z

51 „Gefällt mir“
Does Discourse use Mailgun's validations feature?
VERP bounce replies ignored when using Mailgun
Postmark bounce support?
Email-in replies thread wrongly
Amazon SES/SNS email complaints not received, bounces missing information
What mail service do you recommend?
Confused about VERP, email bounces & additional setup on Discourse
Reply-by-Email was working, now broken
Mailgun "temporarily disabled due to high bounce rate"
How to deactive account of those users who're not receiving emails
Surface data about users with too many bounces
"Discourse::NotFound" error when click "Email Type" field on admin/email/bounced
Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver
"Discourse::NotFound" error when click "Email Type" field on admin/email/bounced
Bounced Email Info Not Found
Fix AWS SNS Bounce
How to block outgoing emails to at anon.forumurl?
Mailgun api key check backward (no API key should be required if bounces handled by mail receiver)
Switching from SMTP to oAuth
Is handling bouncing emails optional, or is it something I definitely need to set up?
Moving from Mailgun to Amazon SES as an amateur
"Discourse::NotFound" error when click "Email Type" field on admin/email/bounced
Mailgun api key, what is it for?
Question about the mail-receiver
Goodbye Sparkpost
Migrated forum with many invalid (bouncing) emails
Amazon SES API - How to setup?
Zero entries in bounced email list
Email suppression list handling
Email suppression list handling
How hard is it to handle Discourse after installation
Set up mail-receiver, but now site won't send any emails?
Installation by the book
Too many user emails domains not working lead to mailgun domain disabled: what to do?
Mailgun huge dropped subscriber
Flush bouncing user mail address
Configuring AWS SES for outgoing, bounce, and incoming email
Notes on Silencing or Deleting users
Retrying bounced emails?
Discourse Mailgun Routes
"Discourse::NotFound" error when click "Email Type" field on admin/email/bounced