Comment créer manuellement un serveur de messagerie sortant interne à Odoo.sh ?

Logo Odoo

Vous allez nous dire « Mais pourquoi avoir besoin de créer un serveur SMTP utilisant les ressources internes d’Odoo.sh ? » alors même qu’Odoo.sh se comporte déjà ainsi lorsqu’il n’y a pas de serveur de messagerie sortant configuré ! La réponse est ici.

Depuis la version 16.3 pour SaaS et 17.0 pour Odoo.sh, il est possible de créer un serveur de messagerie sortant directement dans l’outil. Mais qu’en est-il des versions antérieures ? Dans cet article, nous allons vous expliquer comment procéder pour récupérer les données dont vous aurez besoin, afin de configurer manuellement un serveur de messagerie sortant interne Odoo.sh.

⚠️Il est important de noter que nous fournissons une solution technique pour identifier le serveur et le port SMTP interne de votre serveur Odoo.sh. Cependant, nous ne sommes pas responsables de l’utilisation que vous en ferez. De plus, nous ne garantissons pas que Odoo.sh ne changera pas cette configuration. C’est pour cette raison que nous avons masqué le serveur et le port identifiés dans notre environnement.

  • D’abord, sur une branche de développement Odoo.sh, depuis l’éditeur, ajouter les logs suivants dans la fonction connect() du modèle ir.mail_server – chemin du fichier : /src/odoo/odoo/addons/base/models/ir_mail_server.py
def connect(self, host=None, port=None, user=None, password=None, encryption=None,
                smtp_from=None, ssl_certificate=None, ssl_private_key=None, smtp_debug=False, mail_server_id=None,
                allow_archived=False):

        ...

        else:
            # we were passed individual smtp parameters or nothing and there is no default server
            smtp_server = host or tools.config.get('smtp_server')
            smtp_port = tools.config.get('smtp_port', 25) if port is None else port
            smtp_user = user or tools.config.get('smtp_user')
            smtp_password = password or tools.config.get('smtp_password')
            
            _logger.warning("========> connect() - smtp_server : %s", smtp_server)
            _logger.warning("========> connect() - smtp_port : %s", smtp_port)
            
            if mail_server:
                from_filter = mail_server.from_filter
            else:
                from_filter = self.env['ir.mail_server']._get_default_from_filter()

            smtp_encryption = encryption
            if smtp_encryption is None and tools.config.get('smtp_ssl'):
                smtp_encryption = 'starttls' # smtp_ssl => STARTTLS as of v7
  • Ensuite, simuler un envoie de mail tout en regardant les logs. Vous pourrez y récupérer le serveur et port SMTP mit en place par Odoo.
Capture d'écran des logs Odoo.sh pour récupérer le serveur de messagerie sortant SMTP
  • Enfin, répercuter ces informations sur votre serveur de production.
Capture d'écran pour configurer le serveur de messagerie Odoo.sh

Maintenant que vous savez configurer manuellement un serveur de messagerie sortant interne Odoo.sh, nous vous proposons un article vous aidant à choisir la configuration optimale pour votre instance Odoo.

Si vous cherchez un accompagnement en chef de projet Odoo pour vous aider à déployer, maintenir ou upgrader votre ERP ? Contactez-nous !

Partagez :
Facebook
Twitter
LinkedIn
Email
Print