odoo mail delivery integration

ODOO邮件发送集成
电子邮件这个场景在国外集成率非常高,国内则相对少很多。一是因为文化习惯,而且我们还有微信、钉钉;二是因为Mail模块是针对国际化普世标准设计的,如Gmail、Postfix,不太适合中国大部分中小企业还在用腾讯、网易企业邮箱服务的国情

所以新手在中国要完美使用邮件集成是折腾的,这里我们先将问题一分为二,按照顺序从发送开始说,理解透彻了发送模式对后续接收及分发原理会有一定的帮助

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

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

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

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

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

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

《odoo mail delivery integration》有6个想法

  1. 那是不是Users 的Email必须设置成跟填写的域名后缀一样才行,否则能发邮件,但是收邮件就有问题呢?

    1. 填写一样收邮件也是问题,除非每个邮箱密码都配置进去代收,catchall或自建邮箱收发服务才是长久之计

  2. 您好,我参考您的指导安装2的方式配置了邮件发送,一直是代发模式,使用顺畅。但最近有一客户直接新建邮件发送到了catchall@domain邮箱,结果就每5分钟就会收到一封来自postmaster-odoo@domain的提示邮件,正文大概就是说:直接发送到catchall@domain的邮件无法处理……
    我在odoo后台找不到在哪里可以将此邮件任务停止,也不知道如何将此规则修改。可以指教一下吗??

    1. 经过测试,如果手动在catchall@domain的邮箱里,把客户发来的邮件删除后,odoo就不再重复发送提示邮件。但这个方法不是太合理,因为没法随时监控该邮箱是否收到了客户主动发来的邮件(非回复代发邮件,客户如果使用的是回复模式,会自动转发和在crm里处理)。我计划过两天研究下是否可能用自动动作模块来处理该问题。

  3. 近期在自建odoo关联exchange自建邮件系统,但是不知道为什么,一直是初期设定连接没有问题,但是只要是发邮件就出错。可否指导一下?谢谢

发表评论

电子邮件地址不会被公开。 必填项已用*标注