Toutes les adresses que j’utilise sur le forum peuvent envoyer ou recevoir des mails par un client mail comme Thunderbird ou Claws Mail.
Il y a quatre adresses différentes, seules les trois premières sont concernées par ce sujet :
celle de l’administration dans app.yml : admin@
celle des notifications dans app.yml : forum@
celle du reply-to : reply@
et celle de la publication par e-mail : questions@
Les notifications obtenues par le statut mailing list du forum sont correctement envoyées. Et le test d’envoi de la page admin/email/server-settings se passe bien.
Si je mets en place la réponse par e-mail, cette fonctionnalité est correctement opérationnelle mais les notifications ne fonctionnent plus.
Le test d’envoi précédent est alors en échec avec le statut “501 5.5.4 You are not allowed to send from this address.”
Si je désactive la réponse par email, le test passe à nouveau correctement.
Qui peut m’expliquer pourquoi j’ai cette erreur et comment mettre en place correctement à la fois les notifications et à la fois le “reply by email” ?
Ce message provient de votre service d’envoi de courrier électronique. Il est assez clair.
Vous devez envoyer à partir d’une adresse e-mail que votre serveur smtp peut utiliser. C’est quelque chose comme s’il est configuré pour envoyer depuis example.com et que vous envoyez maintenant depuis forum.example.com
Pourquoi alors dans un cas le test d’envoi est OK et il est KO quand je mets le “reply by email” en place ? Je précise que je ne change rien dans la configuration des notifications.
Que se passe t’il au niveau de Discourse dans la préparation des mails ?
Ce nombre magique est la façon dont Discourse relie les réponses au sujet.
Vous aurez besoin d’un autre serveur de messagerie (ou de modifier celui-ci pour prendre en charge les adresses +) ou de ne pas utiliser la réponse par e-mail.
Oui, je sais que c’est un identifiant pour utiliser le “reply by email”.
Donc le test de l’envoi de mails ne fonctionne pas quand le “reply…” est en place. La doc ne le précise pas et l’erreur provient bien de Discourse et non du serveur de messagerie, ce qui était votre première réponse !
D’ailleurs comment une adresse “from” peut-elle avoir ce “magic number”. Ce format d’adresse est utilisée dans les headers.
Votre reponse n’en est absolument pas une.
Cette transformation du “From” ne doit pas être faite.
Et répondre que l’on doit se passer d’une fonctionnalité prévue par le logiciel est bizarre…
Ce n’est pas une transformation de l’en-tête en soi - lorsque la réponse par e-mail est activée, Discourse envoie un e-mail avec l’enveloppe-from définie sur le modèle d’adresse reply_by_email_address et définit également reply-to: si l’e-mail est répondable.
Return-Path: <incoming+verp-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>
From: Person <notifications@meta.discoursemail.com>
Reply-To: Person <incoming+xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx@meta.discoursemail.com>
L’e-mail de notification va dans l’en-tête From, et reply_by_email_address va dans l’enveloppe-from. Nous avons configuré notre réception de courrier de telle sorte que tout ce qui est adressé à …@meta.discoursemail.com est livré à meta, ce qui fait que cela fonctionne.
Mais si votre serveur de messagerie ne vous permet pas d’utiliser cet enveloppe-from, vous obtiendrez l’erreur que vous signalez.
Cette erreur vient très certainement du serveur de messagerie. Discourse pourrait vous la signaler, mais c’est le serveur de messagerie qui la génère.