Odoo Help


How to post automatically a message on the discussion thread ?

Yassine TEIMI
on 4/20/15, 1:15 PM 2,714 views

Technically speaking I want to use the method responsible of posting messages on the discussion thread, existing below every form on openerp. 

How can I do this simple message post. Like when the object changes his status, the change is recorded on the discussion thread, to keep trace.

I searched on the mail module, especially on the mail_thread.py, I found the method : message_post, is this the methos I'm looking for ? Hope someone did it before me, so he can show me quickly how it can be done properly.


Sopulu Chris
On 7/26/18, 7:47 AM

Here the code below can guide you;

from odoo import fields, models, ....

class Anything(models.Model):

    _name = 'model.name'
    _inherit = ['mail.thread', 'ir.needaction_mixin']

    def create(self, vals):
        res = super(Anything, self).create(vals)
        if vals:
            self.message_post(body=body, res)
        return res


    def button_send_message(self):
            for rec in self:

            body ="Message has been approved on %s", %datetime.datetime.now()

On 4/23/15, 4:13 PM

Hi, please find below an example of posting the message as you requested:

self.message_post(cr, uid, this.id, body=("My custom message with dynamic text: %s") % (my_dynamic_text), context=context)

where 'this' is the browse object of the current record you want to post the message for.

This works if your class inherits the messaging behaviour, as you suggested in your question.
I hope this helps!

About This Community

This platform is for beginners and experts willing to share their Odoo knowledge. It's not a forum to discuss ideas, but a knowledge base of questions and their answers.


Odoo Training Center

Access to our E-learning platform and experience all Odoo Apps through learning videos, exercises and Quizz.

Test it now

Question tools

1 follower(s)


Asked: 4/20/15, 1:15 PM
Seen: 2714 times
Last updated: 7/26/18, 7:47 AM