Whatsmeow Discuss Routing
Attend WhatsApp conversations in Odoo Discuss, with rule-based routing that decides who picks up each new thread.
A WhatsApp team inbox,
inside Discuss.
Whatsmeow Discuss Routing turns accepted inbound WhatsApp messages into live Discuss conversations. Instead of an incoming message quietly landing on a contact’s chatter, it opens a real thread in Odoo Discuss that your team attends and replies to — an operator simply types in the conversation, and the reply goes back out over WhatsApp.
Each WhatsApp conversation maps to exactly one Discuss channel, so a customer’s messages stay in one place and the whole team can see the history. Per-session routing rules decide who attends a new conversation — send first-time contacts to a front desk, known customers to their account manager — and the whole thing is opt-in per session, so any number you do not route keeps posting to the chatter exactly as before.
WhatsApp Inside Discuss
Every WhatsApp conversation becomes a native Discuss channel. Operators read and reply in the thread they already use — no separate inbox, no context switch.
Rule-Based Routing
Ordered routing rules pick which operators attend a new conversation, matched on sender, chat type, keyword, and more. First match wins; anything unmatched goes to the default operators.
Opt-In Per Session
Routing is off by default and enabled one session at a time. A session with it off behaves exactly as it did before this module was installed.
Conversations your team
can actually attend.
Six capabilities that turn an inbound stream into a routed, answerable team inbox.
Conversation-to-Channel Mapping
Each WhatsApp conversation — one WhatsApp number talking to one chat — becomes a single Discuss channel of type WhatsApp. Inbound messages post into it as the correspondent, and the mapping is race-safe.
Reply From the Thread
An operator’s reply, typed in the Discuss conversation, is relayed out over WhatsApp immediately — a live reply happens at human speed and does not wait on the paced queue. Replying to a specific bubble quotes it, and attachments are sent as media.
Routing Rules & Default Operators
Add ordered routing rules per session using criteria like Sender = New (first-time contact) or Sender = Existing, chat type, phone, chat JID, or a keyword. A conversation matching no rule goes to the session’s default operators.
Automatic Contact Creation
A Discuss conversation needs a correspondent, so an inbound message from an unknown number can create a contact from the sender’s WhatsApp name and number. A sender WhatsApp only identifies by LID falls back to a generic correspondent.
Inbound Reactions & Read Markers
A WhatsApp reaction to a message is surfaced on its Discuss bubble, and conversations behave like a private thread — members see read markers — so the team can tell what has been handled.
Conversations Smart Button
A routed session shows a Conversations button that opens every Discuss channel it has spawned, so a manager can review or jump into any WhatsApp thread for that number.
Install the core connector first
This module extends the core connector, so the order matters.
Install Whatsmeow WhatsApp Connector
whatsmeow must be installed first — with its gateway deployed and at least one session paired.
Install this module
Once the core module is in place, install this one from the Apps list like any other add-on.
Routing, one session at a time
Routing is configured per session, under WhatsApp → Configuration → Sessions.
Open a session
Open the number you want to attend in Discuss.
Enable routing
On the Discuss Routing tab, turn on Route inbound to Discuss.
Choose contact creation
Leave Create contact for unknown senders on, or off for a generic correspondent.
Set default operators
Who attends a conversation that no rule matches.
Add routing rules
Ordered rules; all set fields must match, and Attend by operators join the channel. First match wins.
See it in action
The Discuss Routing tab, where routing is switched on and rules decide who attends each new conversation.
Set it up, then attend
Two workflows: routing a number in, and handling the conversations that arrive.
Route a Number into Discuss
Turn a WhatsApp number into a team inbox inside Discuss.
Attend a Conversation
Handle a customer’s WhatsApp messages from Discuss.
Full transparency
This module builds on the core connector’s inbound path, so its behaviour follows the same rules.
The core inbound filter still applies first
Only messages the core inbound filter accepts reach Discuss — a session’s reject rules still apply before routing runs. A conversation that no rule and no default operator covers still creates the channel but adds nobody; a manager can open it from the Conversations button.
LID-only senders have no phone number
A sender WhatsApp identifies only by LID has no phone number, so no contact can be created for them; their conversation uses a generic correspondent instead.
Questions, answered
Quick answers to the most common questions.
Does turning this on change my existing WhatsApp numbers?
No. Routing is opt-in per session and off by default. A session you never enable keeps posting inbound messages to the contact’s chatter exactly as before.
How do replies get back to WhatsApp?
An operator’s message in the Discuss conversation is relayed out over WhatsApp right away. Because a live reply is a human action, it is sent immediately rather than waiting on the paced outgoing queue.
Who can see a WhatsApp conversation?
The operators added to its channel by the routing rules (or the default operators). Managers can open any conversation for a session from that session’s Conversations smart button.
What if two messages from the same contact arrive at once?
The conversation-to-channel mapping is race-safe, so both messages land in the same single conversation rather than creating duplicates.
Release history
A clean record of every release.
Bytesraw
🛠️ Need help?
Got a question, found a bug, or need a custom enhancement? Our support team responds within 24 hours on business days.
help@bytesraw.com →💼 Custom development
Need this module tailored to your workflow, or a brand-new Odoo solution? Let’s talk about your project.
info@bytesraw.com →| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Community Apps Dependencies | Show |
| Lines of code | 2097 |
| Technical Name |
whatsmeow_discuss |
| License | LGPL-3 |
Please log in to comment on this module