Odoo’s Discuss module has always had a split personality. For internal users logged into the full backend, it’s a capable messaging platform with channels, direct messages, video calls, and AI assistance. For everyone else — guests joining a public channel, portal users with limited access, light users who can see some internal features but not others — the experience has been notably worse. Not broken, exactly, but clearly second-class.
Odoo 20 addresses two of the most persistent gaps in that experience. Public discussion pages now offer a proper color scheme toggle, so guests aren’t stuck in a bright white interface at midnight. And light users, who could receive messages but had no way to manage them, finally get the messaging menu that everyone else has had for years.
Dark Mode Arrives on Public Discuss Pages
If you’ve ever shared a Discuss channel link with someone outside your organization — a freelancer, a client, a job candidate — they land on Odoo’s public discussion page. It’s a stripped-down version of Discuss that lets anyone participate in a channel without needing an Odoo account. Up until now, that page was locked to a single visual theme. No dark mode. No customization. Just a bright white interface regardless of the guest’s preferences or the time of day.
The latest update replaces the old guest name popover — the tiny tooltip that appeared when you clicked your name at the bottom of the sidebar — with a proper dropdown menu. The menu is anchored to your avatar and guest name at the bottom of the tabs panel, and it contains two things: an editable name field and a color scheme selector.
Choose dark mode and the page reloads with dark-themed assets. The preference is stored in a browser cookie, so it persists across sessions. Close the tab, come back tomorrow, and the page remembers your choice. On mobile devices, where the sidebar isn’t visible, the same menu appears in the chat window header — just a compact avatar that opens the dropdown.
There’s one caveat worth noting: the color scheme toggle only appears in Odoo Enterprise. Community edition serves the light theme exclusively. The system detects which edition is running through the same odoo.info mechanism the main web client uses, and only shows the toggle when dark assets are actually available.
The implementation touches the Discuss public page controller, the messaging menu component, the chat window, and the call preview screen. The call preview keeps its black background in dark mode, matching the behavior of meeting views in the full Discuss app. A new mail.assets_public_dark bundle packages the dark stylesheets from the core, HTML editor, and public-facing mail components into a single loadable set.
Light Users Can Finally Manage Their Messages
This one is harder to explain without understanding how Odoo’s user tiers work. A “light user” sits between a portal user and a full internal user. They can access some backend features — typically read-only views of specific apps — but don’t have a full Discuss license. Think of a warehouse supervisor who needs to see inventory dashboards but doesn’t need the full accounting suite, or an external auditor who was given limited internal access.
The problem was that these users could receive direct messages from colleagues — someone could send them a chat about an urgent shipment, a question about a report, a heads-up about a meeting change — and the messages would arrive. Chat windows would pop up. The user could read and reply. So far, so good.
But here’s where it fell apart: if the light user closed that chat window, it was gone. The messaging menu — the little speech bubble icon in the top navigation bar that every regular user uses to access their conversations — was completely hidden from light users. There was no way to reopen a closed conversation. No way to browse channels. No way to start a new chat. The only path back to that conversation was waiting for the other person to send another message, which would pop up a new chat window.
It’s the kind of bug that sounds minor in a feature list but is genuinely maddening in practice. Imagine closing a chat window by accident — maybe you hit the X while reaching for a different button — and then having no way to get back to that conversation. You can see that someone sent you a message in your email notifications, but the interface gives you no way to respond.
Odoo 20 fixes this by simply showing the messaging menu to light users. The menu appears in the systray like it does for everyone else, with the familiar tabs for Chats, Channels, and Meeting. Light users can browse their conversations, start new chats, and reopen anything they previously closed.
Three features remain hidden, and the reasoning makes sense. TheLive Chattab is removed because light users aren’t customer support agents. The AItab is hidden since it requires Discuss app access they don’t have. And the “Open in Discuss”action — which expands a chat window into the full Discuss app — is blocked because there’s no Discuss app to open. Everything else works: browsing chats, reading messages, composing replies, joining channels, and creating meetings.
Small Changes, Real Impact
Neither of these updates will headline an Odoo Experience keynote. Dark mode on a public page and a messaging menu for a specific user tier don’t compete with AI agents or new ERP modules for attention. But they represent something important about how software matures: the unglamorous work of making sure edge-case users — guests, limited-access collaborators, external participants — aren’t treated as afterthoughts.
The dark mode change touches 29 files and reorganizes how the public Discuss page handles its visual identity. The light user fix is more surgical — nine files, mostly removing an overly restrictive visibility check and adding the right exceptions. But both share a common theme: Odoo’s communication layer is being refined for the people at its edges, not just the power users at its center.
For organizations that rely on Discuss to collaborate with external partners, these are the kinds of improvements that quietly eliminate support tickets. No more “I can’t find my messages” from light users. No more complaints about eye strain from guests working late on a shared channel. The features that were always there for regular users now extend to everyone who touches the system.