Se rendre au contenu
Odoo Menu
  • Se connecter
  • Essai gratuit
  • Applications
    Finance
    • Comptabilité
    • Facturation
    • Notes de frais
    • Feuilles de calcul (BI)
    • Documents
    • Signature
    Ventes
    • CRM
    • Ventes
    • PdV Boutique
    • PdV Restaurant
    • Abonnements
    • Location
    Sites web
    • Site Web
    • eCommerce
    • Blog
    • Forum
    • Live Chat
    • eLearning
    Chaîne d'approvisionnement
    • Inventaire
    • Fabrication
    • PLM
    • Achats
    • Maintenance
    • Qualité
    Ressources Humaines
    • Employés
    • Recrutement
    • Congés
    • Évaluations
    • Recommandations
    • Parc automobile
    Marketing
    • Marketing Social
    • E-mail Marketing
    • SMS Marketing
    • Événements
    • Marketing Automation
    • Sondages
    Services
    • Projet
    • Feuilles de temps
    • Services sur Site
    • Assistance
    • Planification
    • Rendez-vous
    Productivité
    • Discussion
    • Validations
    • Internet des Objets
    • VoIP
    • Connaissances
    • WhatsApp
    Applications tierces Odoo Studio Plateforme Cloud d'Odoo
  • Industries
    Commerce de détail
    • Librairie
    • Magasin de vêtements
    • Magasin de meubles
    • Épicerie
    • Quincaillerie
    • Magasin de jouets
    Food & Hospitality
    • Bar et Pub
    • Restaurant
    • Fast-food
    • Maison d’hôtes
    • Distributeur de boissons
    • Hôtel
    Immobilier
    • Agence immobilière
    • Cabinet d'architecture
    • Construction
    • Gestion immobilière
    • Jardinage
    • Association de copropriétaires
    Consultance
    • Cabinet d'expertise comptable
    • Partenaire Odoo
    • Agence Marketing
    • Cabinet d'avocats
    • Aquisition de talents
    • Audit & Certification
    Fabrication
    • Textile
    • Métal
    • Meubles
    • Alimentation
    • Brewery
    • Cadeaux d'entreprise
    Santé & Fitness
    • Club de sports
    • Opticien
    • Salle de fitness
    • Praticiens bien-être
    • Pharmacie
    • Salon de coiffure
    Trades
    • Bricoleur
    • Matériel informatique et support
    • Systèmes photovoltaïques
    • Cordonnier
    • Services de nettoyage
    • Services CVC
    Autres
    • Organisation à but non lucratif
    • Agence environnementale
    • Location de panneaux d'affichage
    • Photographie
    • Leasing de vélos
    • Revendeur de logiciel
    Browse all Industries
  • Communauté
    Apprenez
    • Tutoriels
    • Documentation
    • Certifications
    • Formation
    • Blog
    • Podcast
    Renforcer l'éducation
    • Programme éducatif
    • Business Game Scale-Up!
    • Rendez-nous visite
    Obtenir le logiciel
    • Téléchargement
    • Comparez les éditions
    • Versions
    Collaborer
    • Github
    • Forum
    • Événements
    • Traductions
    • Devenez partenaire
    • Services for Partners
    • Enregistrer votre cabinet comptable
    Nos Services
    • Trouver un partenaire
    • Trouver un comptable
    • Rencontrer un conseiller
    • Services de mise en œuvre
    • Références clients
    • Assistance
    • Mises à niveau
    Github Youtube Twitter Linkedin Instagram Facebook Spotify
    +1 (650) 691-3277
    Obtenir une démonstration
  • Tarification
  • Aide

Odoo is the world's easiest all-in-one management software.
It includes hundreds of business apps:

  • CRM
  • e-Commerce
  • Comptabilité
  • Inventaire
  • PoS
  • Projet
  • MRP
All apps
Vous devez être inscrit pour interagir avec la communauté.
Toutes les publications Personnes Badges
Étiquettes (Voir toutl)
odoo accounting v14 pos v15
À propos de ce forum
Vous devez être inscrit pour interagir avec la communauté.
Toutes les publications Personnes Badges
Étiquettes (Voir toutl)
odoo accounting v14 pos v15
À propos de ce forum
Aide

customize the auto lead creation through incoming emails

S'inscrire

Recevez une notification lorsqu'il y a de l'activité sur ce poste

Cette question a été signalée
mailmessagingcrmfetchmail
4 Réponses
29366 Vues
Avatar
RU3IX PTY LTD

Hi,

I have requirement to customize the subject of the lead which is automatically created when the emails are fetched, is their anyway in the server action I could control what needs to have in the subject field when a new lead is created.

Thanks

2
Avatar
Ignorer
Lucio

I am not sure what are you asking. The only thing you want to do is to change the name of the lead being created, no matter what?

Avatar
Lucio
Meilleure réponse

The function that is being called when a message arrives is message_new that is present in mail_thread, but in many cases is re-implemented by modules that need to create objects from mails.

def message_new(self, cr, uid, msg_dict, custom_values=None, context=None):
...
    if custom_values and isInstance(custom_values,dict):
        data.update(custom_values)
    res_id = model.pool.create(cr, uid, data, context=context)
    return res_id

as you can see, you have the parameter msg_dict. Of course, in there is where you get 'the mail' as a dictionary with the different values (e.g. the body, email_from, subject). By updating custom_values.update({'name': 'whatever you want'})

If you choose to re-implement this method, you can put in a dictionary called custom_values all values that are going to be used in the creation of the new object (if any). As key you must use the name of the columns of the object being created (in this case, the lead). After this, you could even call the method message_new defined in mail_thread or not, depending in your particular requirements.

Also, when a message for an object already created arrives, the function that is being called is message_update. In there, with a similar functionality as the ut supra explained, you can put the values that you want to update for the existing object (in this case, a dictionary called update_vals is where you need to put the new values).

def message_update(self, cr, uid, ids, msg_dict, update_vals=None, context=None):
    if update_vals:
        self.write(cr, uid, ids, update_vals, context=context)
5
Avatar
Ignorer
Avatar
Anton
Meilleure réponse

I solved in this way:

  1. First of all - setup "incoming mail server".

  2. Setup "Create a new record" - crm.lead.

  3. Create new server action with type "python code".

  4. There is python code example:

    def parse_description(description):
      '''
       there is parse function
       It is example for parsing messages like this:
    
       Name: John
       Phone: +100500
      '''
      fields=['name','phone']
      _dict={}
      description=description.lower()
      for line in description.split('\n'):
        for field in fields:
            if field in line:
                split_line=line.split(':')
                if len(split_line)>1:
                    pre_dict[field]=line.split(':')[1]
      return  dict
    
lead=self.browse(cr,uid,context['active_id'],context=context)
description=lead['description']
_dict=parse_description(description)
self.write(cr,uid,context['active_id'],{
                        'partner_name':_dict.get('name'),
                        'contact_name':_dict.get('name'),
                        'phone':_dict.get(u'phone'),
                        'mobile':_dict.get(u'phone')})

Of couse for good results you should know python language - the main place is "parse_description" function.

2
Avatar
Ignorer
Arun

My requirement is to fetch mails and create leads in crm_lead :-)

I Configured Incoming Server :-) http://Pop.gmail.com With All info :-)

But How to proceed Further

Vaibhav

Thanks .... Anton Lavrenov :)

Atul Kumar jain

Atul : I got these traceback while i am fetching mail 2014-07-01 13:39:40,188 4992 INFO v8_demo openerp.addons.mail.mail_thread: Routing mail from Atul Jain <jain.atul43@gmail.com> to jain.atul10@hotmail.com with Message-Id <CAG=2G76_SRthL3ybGGyx2Lai5H=RMNxUOjRRR=+5-ODrcgtEZw@mail.gmail.com>: fallback to model:crm.lead, thread_id:False, custom_values:None, uid:1 2014-07-01 13:39:40,445 4992 ERROR v8_demo openerp.addons.fetchmail.fetchmail: Failed to fetch mail from imap server Gmail. Traceback (most recent call last): File "/home/atul/openerp-8/openerp/addons/fetchmail/fetchmail.py", line 206, in fetch_mail action_pool.run(cr, uid, [server.action_id.id], {'active_id': res_id, 'active_ids' :[res_id], 'active_model': context.get("thread_model", server.object_id.model)}) File "/home/atul/openerp-8/openerp/addons/base/ir/ir_actions.py", line 967, in run res = func(cr, uid, action, eval_context=eval_context, context=run_context) File "/home/atul/openerp-8/openerp/addons/base/ir/ir_actions.py", line 805, in run_action_code_multi eval(action.code.strip(), eval_context, mode="exec", nocopy=True) # nocopy allows to return 'action' File "/home/atul/openerp-8/openerp/tools/safe_eval.py", line 254, in safe_eval return eval(c, globals_dict, locals_dict) File "", line 14, in File "", line 4, in parse_description ValueError: "'bool' object has no attribute 'lower'" while evaluating

Avatar
Jaysinh Shukla (jsh)
Meilleure réponse

When the lead is created automatically through an email automation, the lead name it gets created is subject of an email which I want to customise it, currently I dont see any option to manipulate email objects before the leads gets created.

0
Avatar
Ignorer
Jaysinh Shukla (jsh)

Can u pls explain where u had used this function lines in your python coding lead=self.browse(cr,uid,context['active_id'],context=context) description=lead['description'] _dict=parse_description(description) self.write(cr,uid,context['active_id'],{ 'partner_name':_dict.get('name'), 'contact_name':_dict.get('name'), 'phone':_dict.get(u'phone'), 'mobile':_dict.get(u'phone')})

Kurt Haselwimmer

It appears that in early 2013 the codebase was changed so the email content is no longer put into the description field of the created lead. The email that creates the lead is stored as a message that is attached to the lead and I am still working on how to extract information from this.

Avatar
Haresh Kansara
Meilleure réponse

When email created then it will fill name-email, subject etc.

This video will helpful to generate lead/opportunity etc from incoming emails. It is also possible to customise that it will read email body and fill data in document fields.

#Odoo #CreateOpportunityFromIncomingEmail #OdooIncomingEmailToOpportunity #OdooOpportunity #OdooLeadGeneration #OdooAutomaticLeadGeneration

https://youtu.be/ruJ8_txhwYw​


0
Avatar
Ignorer
Vous appréciez la discussion ? Ne vous contentez pas de lire, rejoignez-nous !

Créez un compte dès aujourd'hui pour profiter de fonctionnalités exclusives et échanger avec notre formidable communauté !

S'inscrire
Publications associées Réponses Vues Activité
How can I manage my emails related to leads and opportunities?
mail messaging crm v7
Avatar
1
mars 15
18900
Connect different Zoho Mails to Odoo CRM
mail crm
Avatar
Avatar
1
sept. 25
944
How to stop receiving unwanted mails from OpenERP? Résolu
mail messaging
Avatar
Avatar
2
avr. 23
9666
FR - Incoming mail to ... nowhere?
mail crm
Avatar
0
févr. 23
2313
How to be in a document's followers ? Résolu
project follower mail messaging crm
Avatar
Avatar
3
mars 16
12761
Communauté
  • Tutoriels
  • Documentation
  • Forum
Open Source
  • Téléchargement
  • Github
  • Runbot
  • Traductions
Services
  • Hébergement Odoo.sh
  • Assistance
  • Migration
  • Développements personnalisés
  • Éducation
  • Trouver un comptable
  • Trouver un partenaire
  • Devenez partenaire
À propos
  • Notre société
  • Actifs de la marque
  • Contactez-nous
  • Emplois
  • Événements
  • Podcast
  • Blog
  • Clients
  • Informations légales • Confidentialité
  • Sécurité.
الْعَرَبيّة Català 简体中文 繁體中文 (台灣) Čeština Dansk Nederlands English Suomi Français Deutsch हिंदी Bahasa Indonesia Italiano 日本語 한국어 (KR) Lietuvių kalba Język polski Português (BR) română русский язык Slovenský jazyk slovenščina Español (América Latina) Español ภาษาไทย Türkçe українська Tiếng Việt

Odoo est une suite d'applications open source couvrant tous les besoins de votre entreprise : CRM, eCommerce, Comptabilité, Inventaire, Point de Vente, Gestion de Projet, etc.

Le positionnement unique d'Odoo est d'être à la fois très facile à utiliser et totalement intégré.

Website made with

Odoo Experience on YouTube

1. Use the live chat to ask your questions.
2. The operator answers within a few minutes.

Live support on Youtube
Watch now