‎如何使用我的邮件服务器在 Odoo 中发送和接收电子邮件‎

如果你是Odoo Online或Odoo.sh的用户…

你什么也不需要做!Odoo为你的服务器设置了自己的邮件服务器。 接收和发送电子邮件功能开箱即用!

除非你计划发送大量邮件,可能需要使用外部邮件服务器,否则只需享受你的新Odoo数据库即可。

本文档的范围

本文件 主要针对Odoo本地部署的用户 ,他们无法像`Odoo Online <https://www.odoo.com/trial>`__和`Odoo.sh <https://www.odoo.sh>`__那样,直接通过开箱即用的解决方案在Odoo上收发邮件。

警告

‎如果您的公司中没有人用于管理电子邮件服务器,我们强烈建议您选择 Odoo 托管解决方案。他们的电子邮件系统可以立即工作,并由专业人士监控。不过,如果您希望自己管理电子邮件服务器的声誉,您仍可以使用自己的电子邮件服务器。‎

‎您将在这里找到一些有用的信息,了解如何将您自己的电子邮件解决方案与 Odoo 集成。‎

注解

Office 365邮件服务器无法方便地从Odoo这样的主机发送外部邮件。请参阅`微软文档 <https://support.office.com/en-us/article/How-to-set-up-a-multifunction-device-or-application-to-send-email-using-Office-365-69f58e99-c550-4274-ad18-c805d654b4c4>`__,了解如何设置。

如何管理出站邮件

作为系统管理员,请转到菜单选择 设置 ‣ 常规设置,然后选中 外部电子邮件服务器 。然后,单击 传出邮件服务器 以创建一个服务器并引用电子邮件服务器的 SMTP 数据。填写所有信息后,单击 测试连接

‎下面是 G Suite 服务器的典型配置。‎

../../../../_images/outgoing_server.png

‎然后在常规设置中设置您的电邮域名。‎

注解

如你在Gmail电邮地址 测试连接 时收到``[AUTHENTICATIONFAILED] Invalid credentials (Failure)`` 警告,启用 安全性较低的应用程序访问 选项。你可`在此访问 <https://myaccount.google.com/lesssecureapps?pli=1>`_直接链接。

此外,请启用Gmail账户的IMAP设置。

‎我可以使用 Office 365 服务器吗?‎

如果您在前提下运行 Odoo,您可以使用 Office 365 服务器。Office 365 SMTP 继电器与 Odoo 在线不兼容,除非您配置 Odoo 以强制外向的”从”地址(见下文)。

请参阅 微软文档 <https://support.office.com/en-us/article/How-to-set-up-a-multifunction-device-or-application-to-send-email-using-Office-365-69f58e99-c550-4274-ad18-c805d654b4c4>,为您的 Odoo 的 IP 地址配置 SMTP 中继。

‎如何使用 G Suite 服务器‎

您可以将 G Suite 服务器用于任何 Odoo 托管类型。为此,您需要设置 SMTP 中继服务。配置步骤在 Google 文档中介绍.

‎符合 SPF 标准‎

‎如果您使用 SPF(发件人策略框架)来增加传出电子邮件的可传递性,请不要忘记在域名设置中授权 Odoo 作为发送主机。以下是 Odoo 在线的配置:‎

  • ‎如果没有为 SPF 设置 TXT 记录,请创建一个具有以下定义的记录:v_spf1 include:_spf.odoo.com _~all

  • 如果已经为SPF设置TXT记录,在通过Odoo Online发送邮件的域名中添加“include:_spf.odoo.com”,通过G Suite发送的则可为:v=spf1 include:_spf.odoo.com include:_spf.google.com ~all

找到 `此<https://www.mail-tester.com/spf/>,在你自己的域寄存器中以准确步骤创建或修改TXT记录。

新SPF记录最多可能需要48个小时才能生效,但这通常会更快地发生。

注解

为一个域添加多个SPF记录可能导致邮件被分类为垃圾。我们建议仅修改一个SPF记录以授权给Odoo。

允许DKIM

如果你的邮件服务器启用了DKIM(域密钥标识邮件),你也需要进行同样的操作。对于Odoo Online 和 Odoo.sh,你需要向“odoo._domainkey.odoo.com”添加DNS“odoo._domainkey”CNAME记录。例如,对于“foo.com”,它们应有一条“odoo._domainkey.foo.com”记录,这是值为“odoo._domainkey.odoo.com”的CNAME。

限制条件

请注意,出于安全原因,端口25被阻塞。 尝试使用587、465或2525。

选择允许的”From”电子邮件地址

有时,电子邮件的”From”(传出)地址可能属于不同的域,这可能是一个问题。

例如,如果有地址 mary@customer.example.com 的客户回复邮件,Odoo 将尝试将同一电子邮件重新分发给线程中的其他订阅者。但是,如果域名*customer.example.com*禁止这种安全使用(kudos),Odoo 的再分发电子邮件将被某些收件人的邮件服务器拒绝。

为了避免此类问题,您应该确保所有电子邮件都使用授权域名中的”来自”地址。

如果您的 MTA 支持 `SRS(发送者重写计划)<https://en.wikipedia.org/wiki/Sender_Rewriting_Scheme>`_,您可以启用它来处理这些情况。但是,这更为复杂,需要更多的技术知识,而这些知识并非本文档所涵盖的。

相反,您也可以配置 Odoo 来自己做类似的事情:

  1. 在一般设置中设置你的域名。

    ../../../../_images/alias_domain.png
  2. 在开发人员模式下,转到:菜单选择:’设置 – – >技术 – – >参数 – – >系统参数’。

  3. 从这些添加一个系统参数:

    • 如果您希望*all*您的传出邮件使用相同的”来自”地址,请使用键”mail.force.smtp.从”,并将该地址设置为值(如``outgoing@mycompany.example.com``)。

    • 如果您想保留使用相同域名的电子邮件的原始 “From” 地址,但要更改该地址用于使用不同域名的电子邮件,请使用键``mail.dynamic.smtp.from``,并设置为这些情况下应使用的电子邮件地址(如``outgoing@mycompany.example.com``)。

如何管理入站邮件

Odoo依赖通用的电子邮件别名来收取入站邮件。

根据你的邮件服务器,可能有几种方法来收取邮件。最简单也最推荐的方法是在邮件服务器中按Odoo别名管理邮件地址。

  • 在你的邮件服务器中创建相应的电子邮件地址(catchall@、bounce@、sales@ 等)。

  • 在一般设置中设置你的域名。

    ../../../../_images/alias_domain.png
  • 如果你使用本地部署的Odoo,请在Odoo中为每个别名创建一个 入站邮件服务器 。你也可以在一般设置中进行操作。根据你的电子邮件提供商的设置填写表单。将 对入站邮件执行的操作 留空。在填写完毕所有信息后,点击 测试和确认

../../../../_images/incoming_server.png
  • 如果你使用Odoo Online或Odoo.sh,我们建议将入站邮件重定向到Odoo的域名,而不是仅使用你自己的邮件服务器。这样,你将不会延迟接收入站邮件。实际上,Odoo Online每小时仅收取一次外部服务器的入站邮件。你应在电子邮件服务器中将所有电子邮件地址的重定向设置为Odoo的域名(例如, catchall@mydomain.ext 设为 catchall@mycompany.odoo.com )。

小技巧

Odoo中所有别名都是可自定义的。

对象别名可以从各自的配置视图进行编辑。要编辑捕获和反弹别名,您首先需要激活:参考:’开发者模式<developer-mode>`.

然后前往 :menuselection:`设置 –> 技术 –> 参数 –> 系统参数`定义别名( mail.catchall.alias 和 * mail.bounce.alias* )。

../../../../_images/system_parameters.png

注解

默认情况下,每 5 分钟在 Odoo 本地获取一次入站消息。您可以在:<developer-mode>`.参考:”开发人员模式”中更改此值。转到 :菜单选择:’设置 - >技术 - >自动化 - >预定操作”,并查找 Mail: Fetchmail Service

为事务和群发邮件设置不同的专用服务器

Odoo 的电子邮件服务器能够每天在 Odoo SH 云平台上发送 200 封电子邮件。但是,如果需要,您可以使用单独的邮件传输代理 (MTA) 服务器处理事务性电子邮件和群发邮件。示例:使用 Odoo 自己的邮件服务器处理事务性电子邮件,以及发送电网、亚马逊 SES 或邮件枪进行群发邮件。另一种选择是将邮戳用于交易电子邮件,而亚马逊 SES 或 Sendgrid 则用于群发邮件。

注解

默认的传出电子邮件服务器已经配置。除非出于技术原因想要使用特定的外部传出电子邮件服务器,否则您不应创建替代电子邮件服务器。

为此,您应该首先激活:开发人员模式<developer-mode>。然后转到:菜单选择:’设置 ->技术 - >外向”电子邮件服务器。在那里,您必须创建两个电子邮件 MTA 服务器设置。一个用于交易电子邮件,一个用于群发邮件服务器。请务必将事务性电子邮件服务器的优先级标记为低至大规模电子邮件服务器。

现在,转到:菜单选择:’电子邮件营销 ->设置’,并启用*Dedicated Server*。通过这些设置,Odoo 将服务器用于交易电子邮件的低优先级,而此处选定的服务器用于群发邮件。请注意,在这种情况下,您必须设置域名的发送者策略框架 (SPF) 记录,以包括交易和群发邮件服务器。如果您的服务器与 xxxx.odoo.com 一起存在,可用的选项是森丁蓝和邮件,因为您的电子邮件将来自 xxxx.odoo.com 域。