| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 2581 |
| Technical Name |
rt_dashboard |
| License | OPL-1 |
| Website | https://www.uniasser.com |
| Versions | 16.0 17.0 18.0 19.0 |
| Availability |
Odoo Online
Odoo.sh
On Premise
|
| Odoo Apps Dependencies |
Discuss (mail)
|
| Lines of code | 2581 |
| Technical Name |
rt_dashboard |
| License | OPL-1 |
| Website | https://www.uniasser.com |
| Versions | 16.0 17.0 18.0 19.0 |
📊 RT Dashboard
Real-time dashboards with AI and multi-channel alerts for Odoo. Department KPIs, push updates without page reload, AI-detected anomalies, and WhatsApp & Telegram notifications.
Odoo 16 · 17 · 18 · 19 · OPL-1Dashboard View
Access from the main menu RT Dashboard. The system automatically creates one dashboard per department. KPI cards show the current value, variation vs the previous period, and a historical mini-chart.
Main dashboard — real-time KPI cards with status indicators, bar charts and historical area charts. Automatic updates without page reload.
⚡ LIVE badge confirms the bus.bus connection is active. Data updates every time the cron evaluates a KPI (default every 60 seconds).
Key Features
Real-time
Automatic updates via bus.bus — no F5 needed. Any data change is reflected instantly.
Multi-department
Predefined KPIs for CEO, Sales, Marketing, CFO, CTO, Operations and HR.
Built-in AI
Anomaly detection, daily executive briefing and natural language KPI generator (Anthropic Claude).
Multi-channel alerts
Dashboard notifications, WhatsApp Business API and Telegram Bot when a KPI crosses a threshold.
Formula KPIs
Combine KPIs with expressions: {balance_57} / {burn_rate} to calculate runway, ratios and margins.
Icons & Colors
Visual emoji and Font Awesome selector. Accent color and icon size per KPI.
KPI Definition
Menu → RT Dashboard → KPI Definitions. Create and configure any KPI from any Odoo model.
KPI definition form — identity fields, data source, thresholds and cached values.
KPI Types
Standard KPIs aggregate a field from any Odoo model. Formula KPIs combine existing KPIs with arithmetic expressions.
| Type | When to use | Required fields |
|---|---|---|
| Standard | Aggregate a numeric field from any Odoo model | Model, Aggregation, Measure Field |
| Formula | Combine two or more existing KPIs with arithmetic | Formula expression ({kpi_name}) |
Aggregation functions
| Function | Description |
|---|---|
count | Count records (no Measure Field needed) |
sum | Sum of the specified field |
avg | Arithmetic mean |
max / min | Maximum / Minimum |
avg_monthly | Monthly average: SUM / distinct months. Ideal for burn rate. |
Date tokens in domain
| Token | Replaced by |
|---|---|
{today} | Today's date (YYYY-MM-DD) |
{month_start} | First day of current month |
{year_start} | First day of current year |
{last_30d} | 30 days ago |
{last_90d} | 90 days ago |
{last_365d} | 365 days ago |
Formula KPIs
Combine existing KPIs with arithmetic expressions to calculate ratios, financial runway, margins, etc.
Formula KPI — expression references the technical name of other KPIs in curly braces. Example: {balance_57} / {burn_rate} → runway in months.
balance_57, burn_rate, monthly_sales. Allowed operators: + − × ÷ and parentheses.
Icon Selector & Visual Customization
Each KPI can have an emoji or Font Awesome icon, an accent color, and an independent icon size.
Visual icon selector with emojis grouped by category. Click on the icon field to open the panel.
Icon size options — Small (~20px), Medium (~32px, default), Large (~52px).
Alert Rules
Menu → RT Dashboard → Alert Rules. Each rule monitors a KPI and triggers notifications when it exceeds (or falls below) a threshold.
Alert rule — KPI + level (warning/critical) + channels (Dashboard, WhatsApp, Telegram) + message with {value} token.
| Channel | Requirement |
|---|---|
| Dashboard (in-app) | None. Automatic banner on all open dashboards. |
| WhatsApp Business API token + destination phone number. | |
| Telegram | Telegram bot token + chat_id of the recipient. |
Artificial Intelligence (Anthropic Claude)
AI-powered features — daily executive briefing, natural language KPI generator and anomaly detection.
📋 Daily Executive Briefing
The daily cron generates a natural language summary with the most relevant KPIs for each department, highlighting anomalies and trends. Stored in RT Dashboard → AI Briefings.
sk-ant-). Get one at console.anthropic.com and set it in Settings → Technical → System Parameters under key rt_dashboard.llm_api_key.
🤖 AI KPI Generator
Menu → Create KPI with AI. Describe in plain text the KPI you need:
"last month's sales in euros, grouped by salesperson, confirmed invoices only"
Claude automatically configures model, aggregation, field and domain — ready to review and save.
🔍 Anomaly Detection
The anomaly engine analyzes the historical series of each KPI and notifies when a value deviates significantly from the historical average. Sensitivity is configurable per KPI.
Installation & Update
odoo_rt_dashboard folder into your custom addons directory.Update
./odoo-bin -u odoo_rt_dashboard -d <database> --stop-after-init
?debug=assets to the dashboard URL or clear browser cache with Ctrl+Shift+R.
Compatibility
| Odoo Version | Community (CE) | Enterprise |
|---|---|---|
| Odoo 16 | ✅ | ✅ |
| Odoo 17 | ✅ | ✅ |
| Odoo 18 | ✅ | ✅ |
| Odoo 19 | ✅ | ✅ |
anthropic (install with pip install anthropic in the Odoo virtual environment). Required Odoo dependencies: base, web, bus, mail.Frequently Asked Questions
Why does a KPI show 0?
- The technical name of a referenced KPI does not match exactly the
{name}token in the formula. - The domain filters too much — try
[]to check if there is data. - The chosen field is computed and not SQL-aggregable. Use Compute Now and check server logs.
- The field does not exist in the model. Use the Field Selector to confirm.
How do I move a KPI to another department?
Edit the KPI and change the Department field. The module automatically removes it from the previous dashboard and adds it to the new one.
The LIVE indicator disappears?
The bus.bus connection is lost if the Odoo server restarts. Reload the page to reconnect.
What API key do I need for AI?
The module uses Anthropic Claude. Get your key at console.anthropic.com. The key starts with sk-ant-.
How do I configure WhatsApp alerts?
You need a WhatsApp Business API account (Meta). Enter the token in the alert rule along with the destination phone number in international format (+34600123456).
How do I configure Telegram alerts?
Create a bot with @BotFather on Telegram and get the token. The chat_id is the numeric ID of the chat or group to receive the message.
Support & Contact
| Field | Value |
|---|---|
| Vendor | Uniasser Consulting S.L. |
| Support email | info@uniasser.com |
| Website | www.uniasser.com |
| License | OPL-1 (Odoo Proprietary License) |
| Compatibility | Odoo 16, 17, 18, 19 — Community & Enterprise |
Odoo Proprietary License v1.0 This software and associated files (the "Software") may only be used (executed, modified, executed after modifications) if you have purchased a valid license from the authors, typically via Odoo Apps, or if you have received a written agreement from the authors of the Software (see the COPYRIGHT file). You may develop Odoo modules that use the Software as a library (typically by depending on it, importing it and using its resources), but without copying any source code or material from the Software. You may distribute those modules under the license of your choice, provided that this license is compatible with the terms of the Odoo Proprietary License (For example: LGPL, MIT, or proprietary licenses similar to this one). It is forbidden to publish, distribute, sublicense, or sell copies of the Software or modified copies of the Software. The above copyright notice and this permission notice must be included in all copies or substantial portions of the Software. THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Please log in to comment on this module