Smart Assistant · CandelarIA smart assistant
Embeds a Chatbase-hosted conversational assistant (‘CandelarIA’) inside the back office, using the chatbase URL configured on the centre’s AI module.
| Area | Smart Assistant |
| Routes | smart-assistant · smart-assistant.index |
| Centre modules | ai |
| Staff levels | root · admin · manager · weboperator |
| Models | module-ai |
| UI label | menu.navbar.smart-assistant |
| Coverage | 3 use cases · 1 happy · 3 failure |
How it works
A three-line controller (chatbaseUrl from auth.center) behind a four-role ability. The AI module also powers the natural-language customer filter, and the centre form validates the chatbase URL with its own message (configuration.center.ai.chatbase-url.error), so a broken endpoint is caught at configuration time rather than at use time. As with the other embeds there is no in-app handling for a failure inside the iframe.
Use cases
Why someone opens this (3)
- A manager asking the assistant how to perform a task instead of consulting documentation.
- Getting a quick answer about the centre’s own data or processes.
- Onboarding a new staff member with in-product help.
Path map
flowchart LR F(["CandelarIA smart assistant"]):::feat F --> H1["Assistant opened"]:::ok F -.-> X1["Module off or role not allowed"]:::bad F -.-> X2["Invalid chatbase URL"]:::bad F -.-> X3["Chatbase unavailable"]:::bad classDef feat fill:#4e7a2e,stroke:#4e7a2e,color:#ffffff,font-weight:bold classDef ok fill:#e3f1ea,stroke:#0d6b42,color:#0d4a2e classDef bad fill:#f7e6e2,stroke:#9a2d1c,color:#6e1f13
Happy paths
Assistant opened
- Centre has the AI module enabled with a valid chatbase URL.
- An allowed role opens CandelarIA from the menu.
chatbaseUrlresolves and the assistant loads in the frame.- The user converses with it.
Failure paths
Module off or role not allowed
Cause — AI module disabled, or the role is not root/admin/manager/weboperator.
What happens —
smart-assistant#canAccesshides the entry and blocks the route.
Invalid chatbase URL
Cause — URL fails validation on the centre form.
What happens —
configuration.center.ai.chatbase-url.errorprevents saving a broken configuration.
Chatbase unavailable
Cause — Provider down.
What happens — No in-app error handling; the frame is blank.
QA checklist
Tick these off while regression-testing this feature. The boxes are plain Markdown, so progress is visible in git diffs.
- ✅ Assistant opened
- ⛔ Module off or role not allowed
- ⛔ Invalid chatbase URL
- ⛔ Chatbase unavailable
Implementation
app/controllers/smart-assistant/index.jsapp/routes/smart-assistant/index.jsapp/models/module-ai.jsapp/abilities/smart-assistant.js
Translation keys (4)
Key English menu.navbar.smart-assistantCandelarIA modules-aiArtificiaI Intelligence configuration.center.ai.chatbase-url.errorIt must be a valid URL, ex: https://www.google.com ai.errorNo valid filter found
Related
- Behind the same module — Proposal editor (content, coupon, push, AI images) · AI natural-language customer filter · Segment builder with automatic tag actions
Generated from doc/feature-inventory.json · id smart-assistant · commit 276788ca6