通过电子邮件回复 — 邮件未发送至暂存用户

您好。我已按照这里的建议操作,非常感谢:

POP3 已通过身份验证。我测试了一下,从完全不同的邮箱账户 @other.com 向我们的支持邮箱地址 [instance]@gmail.com 发送邮件。果然,该邮件进入了“私密”分类:boom

我在 Discourse 中回复了 @other.com(即测试用户),回复内容在 Discourse 中显示正常,但 @other.com 的邮箱从未收到任何邮件。检查了垃圾邮件箱,也没有发现。

通过邮件回复的地址为:[instancename]+%{reply_key}@gmail.com

有趣的是,40 分钟后,来自 Discourse 实例的一封自动“摘要”邮件出现在了 @other.com 的收件箱中。

请问有人有任何建议吗?提前感谢。

1 个赞

如果您通过您的 gmail.com 账户发送邮件,我相信可能会出现各种问题。但您也可以检查您网站上的邮件日志,查看具体信息,然后查看 Gmail 账户中是否有关于退信的消息。

我使用 Mailgun 和 webhook 在 Discourse 中显示退信,它运行良好,而且非常便宜,您也应该尝试类似的方法。:slight_smile:

您是否使用了不同于 Gmail 的独立出站服务器?如果是,该服务会有出站邮件的日志。

3 个赞

谢谢 @maiki。我正在使用 SendGrid,效果非常好。按照“设置通过电子邮件回复支持”的说明后,我不太清楚发送给测试用户的邮件回复是如何送达的。SendGrid 的日志中没有任何关于成功或失败的记录,对应的 Gmail 账户的“已发送”文件夹中也没有相关邮件。:thinking:

1 个赞

/admin/email 的日志中显示了什么?请特别检查 /admin/email/sent

4 个赞

谢谢。我还在熟悉 Discourse 的操作。

在 /admin/email/sent 中完全找不到与此处通过电子邮件回复相关的任何内容。

不知道接下来该检查什么。非常欢迎任何建议。

再试一次,并多加留意(既然你现在知道所有功能的位置了);你可以发送更多测试,找出具体在哪一步失败了。

如果“待处理用户”的消息收到了,请回复它(并等待编辑窗口过期,以便消息被发送),然后开始检查日志:先从 Discourse 开始,然后是 Sendgrid,接着是其他相关部分。:slight_smile:

4 个赞

感谢 @maiki。再次测试并发送邮件。作为管理员,我在相应的 Discourse 分类中点击“回复”并发送了回复,但具体发往何处我完全不清楚。除了 Discourse 分类中该回复的记录外,我找不到任何相关活动的痕迹。Discourse 的邮件日志中没有任何记录,SendGrid 的日志中也没有,而且发件邮箱中确实没有收到任何回复。

1 个赞

昨晚我试着给一位注册用户发消息。我进入 /u,点击用户,再点击 message,消息顺利发出,回复也很快收到,一切正常。

所以我觉得“通过邮件回复”的失败应该是 Gmail 的问题。:thinking: