Je pense que cliquer sur un champ « Type d’e-mail », par exemple user_watching_first_post, devrait afficher les détails du message de rebond reçu du destinataire prévu.
Cependant, sur mon site auto-hébergé, j’obtiens le message d’erreur mentionné ci-dessus. Y a-t-il quelque chose que je puisse faire pour le résoudre ?
C’est exact. Je viens de vérifier cela sur mon site Discourse hébergé et cela fonctionne sans aucun problème. Si votre site est sur la dernière version de Discourse, je me demande si le problème est lié à la manière dont votre serveur de messagerie gère la redirection du message de rebond.
Merci. Pour les e-mails sortants, j’utilise Mailgun. Je pense avoir utilisé les paramètres recommandés par Discourse.
Pour les e-mails entrants, j’utilise cette configuration : Configure direct-delivery incoming email for self-hosted sites with Mail-Receiver Mais je ne l’ai jamais mise à jour depuis l’installation. Cela pourrait-il être le problème ? Comme pour Discourse où c’est ./launcher rebuild app, est-ce ./launcher rebuild mail-receiver pour cela ?
Oui, c’est ainsi qu’on le met à niveau. Cela fait un moment depuis la dernière mise à jour, je pense, mais une bonne première étape serait de le mettre à niveau et de passer à Discourse.
Même problème ici. Auto-hébergé, à jour. Les rebonds sont gérés selon la méthode recommandée. Les liens antérieurs à notre passage à une gestion correcte des rebonds fonctionnent parfaitement.
Oui, il est probable que Discourse ne reçoive pas le message de Mailgun. Je ne sais pas comment fonctionnent les webhooks, mais je soupçonne qu’ils informent simplement Discourse d’un échec temporaire ou définitif sans envoyer le message de rebond.
Existe-t-il un moyen de faire fonctionner cette fonctionnalité de Discourse avec Mailgun ?
Il devrait être possible d’afficher au moins le code d’erreur et le message :
Le code d’erreur SMTP et le message d’erreur SMTP sont conservés
“code”: 550,
“address”: “'baz@example.com”,
“error”: “Message was not accepted – invalid mailbox. Local mailbox 'baz@example.com is unavailable: user not found”
Après mes propres tests, il semble que dans de nombreux cas, les rebonds ne soient pas du tout reçus par le destinataire du courrier. (Je n’ai trouvé qu’une tentative de connexion pour un seul, qui a été rapidement perdue). Je ne vois pas du tout l’en-tête Return-Path être défini (est-ce qu’il est censé l’être ?) ce qui me fait penser qu’ils ne sont même pas renvoyés la plupart du temps.
Toujours un problème ici aussi. Malgré ma déclaration précédente, il semble maintenant qu’aucun de ces liens ne fonctionne, depuis le démarrage du site. Initialement, cela ne semblait affecter que les rejets antérieurs à notre prise en charge correcte des rejets (Configure VERP to handle bouncing e-mails).
Je viens de remarquer des piles d’avertissements dans le journal d’erreurs qui ressemblent à ceci :
Impossible de traiter l'e-mail : Email::Receiver::AutoGeneratedEmailError
Reçu : de ...
pour <bounce+f7e463.5f70e9-...@forum.example.com> ; ...
Objet : Votre message n'a pas pu être délivré
C’est peut-être la raison pour laquelle Discourse n’a aucun détail sur les e-mails rejetés.
Je ne vois pas ces erreurs dans les journaux, mais le problème persiste. Lorsque je clique sur la valeur du type d’e-mail dans la liste des e-mails rejetés, j’obtiens « Une erreur s’est produite : Discourse::NotFound ».
C’était déjà sélectionné. Je suis retourné un peu plus loin dans le journal, et bien que je voie des messages occasionnels liés aux e-mails, je ne vois pas ceux que vous avez mentionnés.
Cela fait un petit moment que c’est là, mais cela ne commence que maintenant à causer des problèmes alors que j’essaie de comprendre pourquoi je reçois autant de rejets actuellement.
Le problème semble être qu’il n’y a pas de lien dans la colonne Email Type et rien derrière l’icône (flèches rouges) :
C’est le comportement attendu lorsque la réponse de rebond n’a pas été traitée par Discourse. La fonctionnalité fonctionne correctement si Discourse reçoit les rebonds, sinon elle affichera cette réponse pour tous les rebonds.
Je pense que vous voulez dire que si Discourse ne découvre le rebond que via un webhook Mailgun, les détails du rebond ne sont jamais envoyés à Discourse. Est-ce exact ?
Dans quelles circonstances Discourse gèrerait-il les rebonds plutôt que le service de messagerie externe ? (Je sais que Discourse peut rejeter/refuser des e-mails, mais je parle de la gestion des messages de rebond reçus des destinataires prévus.)