J’ai remarqué que de nombreux sites se plaignent qu’aucune clé API Mailgun n’est définie, mais (du moins la plupart) ces sites reçoivent des réponses via le conteneur de réception d’e-mails et il gère ces rebonds, donc la clé API (et le webhook correspondant sur Mailgun) n’ont pas besoin d’être requis. Il semble que la logique des spécifications (et donc du code) soit inversée :
context "when using Mailgun without an API key" do
let(:replies_enabled) { true }
let(:mailgun_address) { "smtp.mailgun.org" }
let(:api_key) { nil }
it do
expect(check).to have_a_problem.with_priority("low").with_message(
"The server is configured to send emails via Mailgun but you haven't provided an API key used to verify the webhook messages.",
)
end
se plaint si nous avons activé les réponses, mais dans ce cas, nous n’avons pas besoin du webhook et
context "when replies are disabled" do
let(:replies_enabled) { false }
let(:mailgun_address) { anything }
let(:api_key) { anything }
it { expect(check).to be_chill_about_it }
end
Ici, nous ne traitons pas les rebonds avec le récepteur d’e-mails et nous sommes calmes à ce sujet.
Suis-je confus ou est-ce inversé ?
Eh bien, peut-être que je suis confus. Il semble bien que le récepteur d’e-mails ne signale pas les rebonds à Discourse. Un site très fréquenté n’a aucun message de rebond récent.
Mais :
Et :
Cette documentation suggère donc que si vous avez un récepteur d’e-mails fonctionnel, il devrait s’en charger. Et le code que j’ai écrit dans certains de mes outils internes qui mettaient en place ces webhooks dit “# pas besoin de webhooks quand on a un récepteur d’e-mails”.
Je viens de tomber sur ça aussi. Si vous avez le récepteur de courrier activé, cet avertissement n’a aucun sens. J’ai simplement ignoré l’avertissement compte tenu de ce que j’ai lu ici (merci Jay !), mais je ne peux m’empêcher de penser que cela pourrait être mieux géré. Fournissez au moins un lien vers le paramètre afin de ne pas avoir à le chercher (indice : il ne se trouve pas dans les paramètres de messagerie), et sur le paramètre, fournissez une meilleure description avec plus de détails et peut-être un lien vers un sujet de documentation sur meta ?
En enquêtant sur cela, j’ai remarqué que nous n’avions qu’une vérification de problème pour Mailgun. J’ai donc fait un peu de refactorisation pour ajouter une vérification de problème globale de « gestion des rebonds d’e-mails » qui fonctionnera pour tous les fournisseurs de messagerie que nous avons configurés.