social/mail_gateway/controllers2/main.py

23 lines
879 B
Python

from odoo import http
from odoo.http import request
from odoo.addons.mail.controllers.bus import MailChatController
from odoo.addons.mail.controllers.main import MailController
class NewMailController(MailController):
@http.route("/mail/init_messaging", type="json", auth="user")
def mail_init_messaging(self):
result = super().mail_init_messaging()
result["broker_slots"] = request.env["mail.broker"].broker_fetch_slot()
return result
class NewMailChatController(MailChatController):
def _poll(self, dbname, channels, last, options):
if request.session.uid:
if request.env.user.has_group("mail_broker.broker_user"):
for bot in request.env["mail.broker"].search([]):
channels.append((request.db, "mail.broker", bot.id))
return super()._poll(dbname, channels, last, options)