SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our User Agreement and Privacy Policy.
SlideShare uses cookies to improve functionality and performance, and to provide you with relevant advertising. If you continue browsing the site, you agree to the use of cookies on this website. See our Privacy Policy and User Agreement for details.
Successfully reported this slideshow.
Activate your 14 day free trial to unlock unlimited reading.
2.
Messaging, OpenChatter
Transversal app
Discuss with customers on
quotations
Feedback on issues
Mailing groups
Discussions on tasks
Subscribe to Newsletters
·
·
·
·
·
ThibaultDelavallée(tde@odoo.com)
3.
Messaging, OpenChatter
Transversal features
OpenChatter
Communication history
Subscribe, Followers
Action counters
Mail gateway
Aliases
·
·
·
·
·
·
ThibaultDelavallée(tde@odoo.com)
5.
OpenChatter / mail.thread
OpenChatter in your model:
classclass MyClass((Model):):
_inherit == 'mail.thread'
OpenChatter in your view
<div<div class="oe_chatter">>
<field<field name="message_follower_ids" widget="mail_followers"/>/>
<field<field name="message_ids" widget="mail_thread"/>/>
</div></div>
And you are done !
ThibaultDelavallée(tde@odoo.com)
7.
OpenChatter / mail.thread
What did it do ? new fields, linking messaging models
_columns == {{
'message_ids':: ...... # communication history
'message_follower_ids':: ...... # followers
'message_unread':: ...... # unread messages
}}
MyClasss MailMessage((Model):):
......
classclass MailMail((Model):):
......
classclass MailFollowers((Model):):
......
ThibaultDelavallée(tde@odoo.com)
8.
OpenChatter / mail.thread
What did it do ? new features
defdef message_post((......):):
defdef message_track((......):):
defdef message_subscribe((......):):
defdef message_process((......):):
ThibaultDelavallée(tde@odoo.com)
14.
Email aliases
Add alias management in your model:
classclass MyClass((Model):):
_inherits == {{'mail.alias':: 'alias_id'}}
_columns == {{
'alias_id':: fields..many2one(('mail.alias',, 'Alias'),),
}}
New record -> new alias
ThibaultDelavallée(tde@odoo.com)
15.
Aliases and Mail Gateway
alias_contact -> privacy settings
alias_force_thread_id -> redirect emails to a document's
thread or create a new document
·
·
ThibaultDelavallée(tde@odoo.com)
16.
Summary
Modular approach: inheritance -> features
OpenChatter and Followers -> mail.thread
Needaction -> ir.needaction_mixin
Mail gateway and mail aliases -> mail.alias
Customization through subtypes, tracking
-> inheritance (python)
-> light model decoration
-> a bit of subtypes / aliases (XML)
Play with it !
·
·
·
·
·
·
·
·
·
ThibaultDelavallée(tde@odoo.com)
17.
Thanks for your attention
Questions ? tde@openerp.com