Odoo中文社区可以通过以下两个域名访问:shine-it.net , odoo.net.cn

原论坛用户的基本信息和发帖这里都予以保留,请注意:原论坛用户无需重新注册新用户,但是您的密码需要重置

开发人员可以登录gitter讨论组: http://gitter.im/odoo-china/Talk, 需要github账号

如果您登录系统碰到问题,请在微信公众号留言:

ODOO12,11,10配置阿里邮箱腾讯邮箱,邮件失败解决方法,销售及费用邮箱配置实例



  • 原文地址,更清晰的图文排版: https://www.sunpop.cn/odoo_email_config_ali_fail_fix/

    在odoo12的版本中,邮件已经很容易配置。
    
    强烈建议阿里企业云邮箱,支持相同邮件域代发(例如实际和代发邮件帐户都是 @sunpop.cn),省却大量麻烦。
    腾讯企业邮箱虽然也支持代发,但不支持odoo经过bounce后的发件地址,所以会比较麻烦。
    
    设置正常后,发出的邮件中,显示发件人均为您设置的本公司 email,如 [email protected] ,
    而实际的发邮件帐户为 postmaster-odoo。
    默认设置中多数邮件均为实时发送,少数日程型邮件为每小时检查一次进行发送,每5分钟进行一次收件。
    
    当你正常使用odoo的邮件集成后,你会发现odoo为你打开了一扇全新的大门。
    关键信息主动提醒,各种原生统计分析定期自动汇报,信息自动化将让你尽享方便,
    充分感受到领导的地位,同时也会引导你走向钉钉/微信的应用整合康庄大道。
    

    先看一下成功设置后的效果,邀请邮件

    替代文字

    如果你很不幸运的无法使用阿里邮,那么下文中也有改代码的方法,如果你比较懒,可以直接安装我们在odoo应用市场上的收费补丁app_send_mail_no_bounce,安装完即可正常使用腾讯邮箱等。

    替代文字

    下面我们来说说如何在odoo里进行邮箱的正确设置

    odoo中,邮件收发服务器配置都设置好并测试ok,发送邮件时却失败,原因在于收件人(isp反垃圾邮件策略)会反查来源地址,如不存在此账户,则拒绝接收.

    另一个原因是国内与国外的邮箱不同。odoo默认使用catchall来做回复邮件地址, 为正确路由,会将发件人设置为 bounce-xxx的方式,导致发件人和认证信息不符合。

    odoo默认发件者为[email protected]( 后缀为你在odoo中设置的“别域名),如果你的邮件服务器上没有此默认发件者账号,就会有被拒绝,导致发送邮件不成功,解决办法:

    1 .出向配置中增加邮箱账号“[email protected]”,设置-->参数-->系统参数为 mail.bounce.alias 为 "postmaster-odoo"

    2.【对支持bounce的邮局比如阿里云企业邮局可以不用改】在addons\base\ir\ir_mail_server.py 中修改代码,odoo12注释445行,odoo11则注释427行,odoo10则注释 396行,改为如下内容

    # smtp_from = from_rfc2822[-1]"
    smtp_from = self._get_default_bounce_address()
    

    =======

    3、输入邮箱账户、密码信息,根据需要选择使用的邮件协议,输入相应的服务器信息:

    阿里云企业邮箱现在网页版默认为 SSL 加密登录,如需全程 SSL 加密,收费版邮箱请访问 mail.mxhichina.com 登录;免费版请使用 qiye.aliyun.com 登录。

    POP 协议,接收服务器名称:pop3.mxhichina.com,或者pop3.您的邮箱域名,端口号110,ssl加密端口995。

    IMAP 协议,接收服务器名称:imap.mxhichina.com,端口号143,ssl加密端口993。

    注意,odoo要用ssl加密方式,特别是在阿里云服务器。

    发送服务器名称:smtp.mxhichina.com,端口25,ssl加密端口465。

    4、为每一个用户设置收邮件,有两种办法,第一种是如果邮件服务器有catchall功能,那么配置好,入向邮箱增加 "[email protected]";第二种就是一个一个设置了。

    替代文字

    5、销售用email实例。

    设置好收件帐号后,将不同销售团队设置邮件别名,如图直销团队用[email protected],则发邮件至 [email protected],则会在该团队生成一个商机

    替代文字

    6、费用email实例。

    配置好后,向 [email protected] 发如图的邮件,则会生成相关费用明细及说明,并对应好费用提交人。十分方便。

    替代文字

    1. 万网云邮箱所需要设置的解析记录如下:

    操作解析的域名 解析记录类型 优先级 解析记录值
    @ MX 5 mxn.mxhichina.com.
    @ MX 10 mxw.mxhichina.com.
    pop3 CNAME - pop3.mxhichina.com.
    smtp CNAME - smtp.mxhichina.com.
    mail CNAME - mail.mxhichina.com.
    @ TXT - v=spf1 include:spf.mxhichina.com -all

    有关邮件的 bounce 可参考以下文章

    https://renjie.me/2017/05/13/odoo-mail-delivery-integration/

    =======================

    odoo邮件基础
    这里我们先将问题一分为二,按照顺序从发送开始说,理解透彻了发送模式对后续接收及分发原理会有一定的帮助

    相关系统参数:
    mail.bounce.alias(默认值bounce,无界面设置)
    mail.catchall.domain(默认值odoo域名,可以在通用设置别名域里设置)

    发送账号配置:
    默认localhost用于本地自建smtp邮件发送服务器使用,如Postfix服务
    一般配置成企业邮箱专门为之新建的一个ODOO账号,如[email protected]

    发件名义原则:
    1、系统邮件如新用户邀请、密码重置等以公司Email设置里的邮箱名义发送,如[email protected]
    2、个人邮件如操作者自己的业务沟通,以用户对应的联系人Email设置里的邮箱名义发送,如[email protected]

    三大发送模式:
    1、简单发送(mail.catchall.domain不设置)
    直接用发送账号发出,发件人需要与发送账号相同或者是其同一账号下的其他别名,否则会被邮件系统拒绝,如SMTPSenderRefused: 501 mail from address must be same as authorization user [email protected]。接收方也直接回复该真实地址,非常容易理解,属于最原始的模式,最适合做邮件通知这种只集成发送不用集成接收的情况

    2、代理发送(mail.catchall.domain设置,mail.bounce.alias不设置)
    间接用postmaster-odoo账号代发出,发送账号需要具有该名称授权,否则也会被邮件系统拒绝,如SMTPSenderRefused: 501 mail from address must be same as authorization user [email protected]。接收方默认回复catchall专用地址,由于属于代发,且发件地址、代发地址、回复地址都可以不相同,第一次使用还会有些颠覆邮箱观,甚至某些客户端出于谨慎还会出现欺诈提醒,但这确是目前国内用的最多的务实模式,大部分教程都是以此展开详解

    3、反弹发送(mail.catchall.domain设置,mail.bounce.alias设置)
    间接用bounce地址代发出,如[email protected]或者[email protected],其中+5为邮件流水号,-2为单据流水号,可见前者还是单据相关邮件,接收方也默认回复catchall专用地址,因为其涉及到邮件接收等相关知识,而且国内免费邮箱服务基本没有完美支持,本文将不深入探讨,待以后ODOO邮件接收集成的时候在讨论如何配合Postfix实现完美收发自如


登录后回复