Erreur "Discourse::NotFound" lors du clic sur le champ "Email Type" dans admin/email/bounced

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 ?

Merci.

2 « J'aime »

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.

2 « J'aime »

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 ?

1 « J'aime »

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.

2 « J'aime »

J’ai mis à jour les deux et j’obtiens toujours la même erreur, y compris (je pense) pour les e-mails reçus depuis la mise à jour. D’autres idées ?

3 « J'aime »

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.

4 « J'aime »

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.

2 « J'aime »

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”

https://documentation.mailgun.com/en/latest/api-bounces.html#examples

Sinon, nous avons au moins besoin d’un message d’erreur pertinent pour expliquer pourquoi le lien ne fonctionne pas :slight_smile:

2 « J'aime »

Du travail a-t-il été fait à ce sujet ? Je vous serais très reconnaissant si c’était le cas :slight_smile:

J’utilise Digital Ocean et Mailgun (c’est-à-dire les principales recommandations), donc j’imagine que je ne suis pas le seul à avoir ce problème.

3 « J'aime »

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.

2 « J'aime »

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).

3 « J'aime »

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 ».

Et si vous cochez « Avertissement » ?

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.

J’ai le même problème avec Mailgun. Hôte différent, donc ce n’est pas ça !

Je me demande s’il y a un problème avec les instructions de configuration de Mailgun pour la configuration VERP :

2 « J'aime »

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 :information_source: (flèches rouges) :

Lorsque je clique dessus, j’obtiens ceci :

En examinant le code de la page, les balises <a> en HTML semblent manquer complètement le href :

J’ai configuré VERP pour Mailgun, et cela semble fonctionner correctement par ailleurs.

1 « J'aime »

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.

Pouvez-vous vérifier et exécuter le test conformément à Configure VERP to handle bouncing e-mails ?

1 « J'aime »

Un meilleur message serait bien dans ce cas.

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 ?

Si c’est le cas, y aurait-il un moyen d’envoyer ces détails à Discourse et de les enregistrer et d’afficher au même endroit que les rebonds reçus par Discourse ? Je pense que l’API Mailgun le permettrait ("Discourse::NotFound" error when click "Email Type" field on admin/email/bounced - #8 by Jonathan5).

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.)

3 « J'aime »

D’accord. Si quelque chose n’est pas réellement cassé, il ne devrait pas paraître cassé. Discourse peut sûrement fournir un message plus rassurant.

3 « J'aime »