Discuss Notification Failures
Odoo Discuss relies on real-time notifications for chat, channel messages, and activity alerts. When they stop working:
Issues:
- Chat messages not appearing in real-time (only after page refresh)
- "Connecting..." shown permanently in Discuss
- Desktop/browser notifications never appear
- @mention notifications not received
- Chatter updates not showing without refresh
- Bus service connection errors in browser consoleFix 1: Longpolling/Websocket Configuration
# Odoo uses longpolling (port 8072) or websocket for real-time notifications
# Check if longpolling is working:
curl -v http://localhost:8072/longpolling/poll
# For Odoo 17+, websocket is used:
# Check websocket endpoint:
# Browser DevTools > Network > WS tab
# Should see a websocket connection to /websocket
# If not working, check odoo.conf:
[options]
workers = 4 # Must be > 0 for longpolling to work
gevent_port = 8072 # Longpolling port
# workers = 0 (development mode) disables the separate gevent worker
# Longpolling works differently in dev modeFix 2: Nginx Proxy Configuration for Websocket
# Nginx must properly proxy websocket connections:
# For Odoo 17+ (websocket):
location /websocket {
proxy_pass http://127.0.0.1:8072;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "Upgrade";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# Timeout — keep connection alive
proxy_read_timeout 86400; # 24 hours
proxy_send_timeout 86400;
}
# For older Odoo (longpolling):
location /longpolling/ {
proxy_pass http://127.0.0.1:8072;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_read_timeout 86400;
}Fix 3: Browser Notification Permissions
# Desktop notifications require browser permission:
# Check permissions:
# Chrome: click lock icon in URL bar > Notifications > Allow
# Firefox: click lock icon > Permissions > Notifications > Allow
# Edge: Settings > Cookies and permissions > Notifications
# In Odoo, enable desktop notifications:
# Settings > Discuss > enable "Desktop Notifications"
# Or per user: Preferences > Notification > Desktop
# Common blockers:
# - Browser notification permission denied
# - Do Not Disturb mode on OS
# - Browser running in focus mode
# - HTTPS required for notifications (HTTP won't work)Fix 4: Bus Service Errors
# Check browser console (F12) for bus service errors:
# Common errors:
# - "Bus service: connection lost"
# - "WebSocket connection failed"
# - "longpolling: no response"
# Causes:
# 1. Workers = 0 in production (no gevent worker)
# 2. Nginx not proxying websocket/longpolling
# 3. Firewall blocking port 8072
# 4. SSL/TLS termination breaking websocket upgrade
# Test bus service:
# In browser console:
odoo.bus_service // Should be defined
// Check websocket status in Network > WS tabFix 5: Notification Preferences
# Each user can configure notification preferences:
# Settings > Users > select user > Preferences tab
# "Notification" section:
# - "Handle by Emails" — no in-app notification, email only
# - "Handle in Odoo" — in-app notification via Discuss
# If set to "Handle by Emails":
# The user won't see real-time chat notifications
# Change to "Handle in Odoo" for real-time notifications
# Check across all users:
sudo -u postgres psql -d mydb -c "
SELECT rp.name, rp.notification_type
FROM res_users ru
JOIN res_partner rp ON ru.partner_id = rp.id
WHERE ru.active = true
ORDER BY rp.name;
"Fix 6: Cloudflare/CDN Interference
# CDNs may terminate websocket connections prematurely
# Cloudflare:
# Websockets are supported on all plans
# But idle timeout is 100 seconds on Free plan
# Odoo sends keepalive pings to prevent timeout
# If using Cloudflare:
# 1. Enable WebSockets in Network settings
# 2. Set proxy_read_timeout > 100 in Nginx
# 3. Consider using Cloudflare bypass for /websocket path
# Other CDNs may not support websockets at all
# Check CDN documentation for websocket supportFix 7: Discuss Not Loading
# If the Discuss app itself doesn't load:
# Check for JavaScript errors (F12 > Console)
# Clear asset bundles and regenerate:
# Settings > Technical > Attachments > delete assets
# Restart Odoo
# Check if the mail module is installed:
# Settings > Apps > search "Discuss"
# The 'mail' module provides Discuss functionalityPrevention
DeployMonkey configures websocket proxy, notification services, and bus connections automatically. The AI agent monitors real-time notification delivery and detects connection issues before users notice missing messages.