使用 Odoo 发送电子邮件¶
在 Odoo 中使用您的电子邮件域¶
Odoo中的文档(CRM商机,销售订单,发票……)有一个名为*chatter*的讨论线程。
当您在聊天中发布消息时,此消息将通过电子邮件发送给文档的关注者。如果关注者回复消息,则回复会更新聊天,Odoo会将回复转发给关注者。
从您的用户到合作伙伴(客户,供应商)的电子邮件是从您的用户的电子邮件地址发送的。同样,合作伙伴向用户发送的电子邮件也从合作伙伴的电子邮件地址发送。这使您可以一目了然地识别谁发送了Odoo转发的电子邮件。
如果您的数据库托管在我们的云(Odoo Online或 Odoo.sh)上,则无需添加传出电子邮件服务器即可从您的自定义域发送电子邮件。您可以使用默认的Odoo电子邮件服务器享受此功能。
重要
Odoo服务器受到每日电子邮件限制,以防止滥用。对于具有企业订阅的数据库,默认限制为每天发送 200 封电子邮件。在某些条件下,可以增加此限制。请参阅我们的:doc:FAQ <faq>
或联系支持人员了解更多信息。
但是,建议您配置域名,以确保来自用户的电子邮件到达您的合作伙伴,而不是被视为垃圾邮件。
出于同样的原因,我们建议您始终向用户提供您管理的域中的电子邮件地址,而不是通用电子邮件地址(gmail.com、outlook.com 等)。
符合 SPF 标准¶
发件人策略框架 (SPF) 协议允许域名所有者指定允许哪些服务器从该域发送电子邮件。当服务器收到传入电子邮件时,它会根据发件人的 SPF 记录检查发送服务器的 IP 地址是否在允许的 IP 列表中。
注解
SPF 验证在电子邮件的“返回路径”字段中提到的域上执行。对于Odoo发送的电子邮件,此域对应于数据库系统参数中“mail.catchall.domain”键的值。
请参阅 :ref:有关传入电子邮件的文档<email_communication/inbound_messages>
。
域的 SPF 策略是使用 TXT 记录设置的。如何创建或修改 TXT 记录取决于托管域名的 DNS 区域的提供商。为了使验证正常工作,每个域只能有一个 SPF 记录。
如果您的域名还没有 SPF 记录,则要创建的记录内容如下:
v=spf1 include:_spf.odoo.com ~all
如果您的域名已有 SPF 记录,则需要更新此记录(并且不要创建新记录)。
Example
如果您的TXT记录是“v=spf1 include:_spf.google.com ~all”,您需要对其进行编辑以添加“include:_spf.odoo.com”:“v=spf1 include:_spf.odoo.com include:_spf.google.com ~all`
您可以使用免费工具(如“MXToolbox SPF <https://mxtoolbox.com/spf.aspx>”_)检查您的SPF记录是否有效。
启用DKIM¶
域名密钥识别邮件 (DKIM) 允许您使用数字签名对电子邮件进行身份验证。
发送电子邮件时,Odoo服务器在标头中包含唯一的DKIM签名。收件人的服务器使用您域名中的 DKIM 记录解密此签名。如果签名和记录中包含的密钥匹配,则可保证您的消息是真实的,并且在传输过程中未被更改。
要启用 DKIM,您必须将 CNAME 记录添加到域名的 DNS 区域:
“odoo._domainkey在CNAME odoo._domainkey.odoo.com中。”
小技巧
如果您的域名是“mycompany.com”,则需要创建一个子域名“odoo._domainkey.mycompany.com”,其规范名称为“odoo._domainkey.odoo.com”。
如何创建或修改 CNAME 记录取决于托管域名 DNS 区域的提供商。下面列出了最常见的提供商。
您可以使用“DKIM 核心<https://dkimcore.org/tools/>”等免费工具检查您的 DKIM 记录是否有效。如果询问选择器,请输入“odoo”。
查看您的 DMARC 政策¶
基于域的消息身份验证、报告和一致性 (DMARC) 是一种统一 SPF 和 DKIM 的协议。域名的 DMARC 记录中包含的说明告诉目标服务器如何处理未通过 SPF 和/或 DKIM 检查的传入电子邮件。
有三种 DMARC 策略: - “p=none”- “p=quarantine”- “p=reject”`
“p=隔离”和“p=拒绝”指示接收电子邮件的服务器隔离该电子邮件,如果 SPF 和/或 DKIM 检查失败,则忽略该电子邮件。
如果您的域名使用 DMARC 并定义了这些策略之一,则必须符合 SPF 标准或启用 DKIM。
危险
Yahoo 或 AOL 是 DMARC 策略设置为“p=reject”的电子邮件提供商的示例。我们强烈建议您不要为用户使用 @yahoo.com 或 @aol.com 地址。这些电子邮件将永远不会到达收件人。
“p=none”用于域所有者接收有关使用其域的实体的报告。如果 DMARC 检查失败,则不应影响送达率。
您可以使用“MXToolbox DMARC <https://mxtoolbox.com/DMARC.aspx>”_等工具检查域名的DMARC记录。
如果您的合作伙伴之一,客户或供应商,使用DMARC并定义了这些策略之一,Odoo服务器无法将来自此合作伙伴的电子邮件中继给您的用户。
您需要 :ref:在 Odoo 中处理用户通知 <discuss_app/notification_preferences>
,或者将合作伙伴的电子邮件地址替换为默认电子邮件地址。
SPF,DKIM和DMARC常见提供商的文档¶
为了全面测试您的配置,“Mail-Tester <https://www.mail-tester.com/>”_工具将为您提供在一封电子邮件中的内容和配置的完整概述!Mail-Tester也可用于其他鲜为人知的提供商。
使用默认电子邮件地址¶
要强制使用发送电子邮件的电子邮件地址,您需要在数据库的系统参数中创建以下密钥:
如果设置了“mail.default.from”,并且包含完整的电子邮件地址,则所有传出电子邮件都将从给定地址发送。这是使用“Outlook with Odoo <https://docs.microsoft.com/en-us/exchange/mail-flow-best-practices/how-to-set-up-a-multifunction-device-or-application-to-send-email-using-microsoft-365-or-office-365#option-1-authenticate-your-device-or-application-directly-with-a-microsoft-365-or-office-365-mailbox-and-send-mail-using-smtp-auth-client-submission>”_的要求。
您可以在 :ref:开发人员模式 <developer-mode>
中访问 :menuselection:设置 --> 技术 -->参数 -->系统参数
菜单中的 统参 。