Skip to main content

Astus: The visitor assistant

The visitor assistant is a small "I am an AI" bubble on your public site. Visitors type their question, Astus searches the pages of your site and answers in two or three sentences, with links to the right pages.

It is a separate module, installed with the package since version 2.1.9, but never published on its own: every question uses tokens on your AI account, without any click from you. Switching it on is your decision.

What it does, and what it does not

It only searches your site, in Joomla's Smart Search index, with the rights of an ordinary visitor. An article that is unpublished, scheduled for later or reserved for members is not in there: the assistant cannot show it.

It never makes up a link. The AI picks among the pages found by the search, by their number; Astus builds the addresses from the index. If the AI's text contains a web or email address, it is removed before display.

It writes nothing on your site. No tools, no changes: it reads the index and answers.

It does not replace your customer service. When it finds nothing, it says so, and offers your contact page or a support ticket if you have set them.

Before you start: three conditions

While any of them is missing, the bubble stays hidden. That is deliberate: a bubble answering "unavailable" to every question would be worse than no bubble.

  1. The System - Astus plugin is enabled. See Installing Astus and showing its modules.
  2. An AI key is saved in Components → Astus, Options button. The assistant uses the same provider as the rest of Astus (Gemini, Claude or Mistral).
  3. The Smart Search index is filled. Open Components → Smart Search and click Index. While there, check that the Content - Smart Search plugin is enabled: it adds every article you save afterwards to the index.

If the index is empty or old, the assistant finds nothing, or finds outdated pages. Run Index again after a large batch of changes.

Publishing the module, step by step

The module is already installed with the package: there is nothing to upload.

  1. Open Content → Site Modules, then click New.
  2. Choose Astus - Visitor assistant.
  3. Title: a name to find it in the list, for example "Assistant". In the right-hand column, set Title to Hide.
  4. Position: choose a position present on every page. In both Cassiopeia and Corpus, the debug position works. The bubble floats at the bottom of the screen anyway: the position only makes Joomla write it into the page.
  5. Status: Published.
  6. Language: All. One module is enough for a multilingual site (see below).
  7. Menu Assignment tab: On all pages, or only on the pages you choose.
  8. Advanced tab, Module Style: choose none (System group). Otherwise the template draws an empty card, with its title, where the position is.
  9. Set the Limits tab (below) before saving, then Save & Close.

Open your site in a private window: the bubble appears at the bottom right. Ask a question on a topic your pages cover.

The settings in the Module tab

The tab opens on a presentation card for the module. Below it, the appearance settings are on the left and "When the assistant finds nothing" on the right; the external links follow, across the full width. On a narrow screen everything moves to a single column. Every field has a default value: you can publish without touching anything.

Appearance

SettingWhat it doesDefault
Assistant nameA first name or a name, for example "Lea". It replaces "Site assistant" at the top of the panel and in the greeting: "Hello. I am Lea, an AI...". The "AI" label always stays visible.Empty: "Site assistant"
Bubble titleThe first line of the bubble, in bold.Empty: "I am an AI"
Bubble textThe second line. Hidden on phones.Empty: "A question? I'll find the answer on this site."
Side of the screenLeft or right.Right
Bubble formatFull: icon, title and text. Small: a round button with the icon and the "AI" label. Automatic: full until the visitor opens it, small afterwards.Automatic
Close when clicking the pageThe panel closes when the visitor clicks elsewhere on the page. No effect on phones, where the panel fills the screen.Yes
Close after inactivity (minutes)The panel closes by itself after this time without activity. Never during a search, nor once the visitor has started typing. The conversation is kept. 0: never.5
Forced colourLeave empty to use your template's colours (see below). A colour chosen here wins; the text turns white or black, whichever reads best.Empty
Privacy pageA menu item. Its link appears under the input field, next to the notice that questions are sent to an AI provider.None

Why "I am an AI"? The European AI Act requires telling people that they are talking to an AI. Keep that notice, even if you give the assistant a first name.

When the assistant finds nothing

Under every answer that falls short, a box invites the visitor to write to you. It appears when nothing is found, when the AI judges that your pages do not answer, when a limit is reached or when something fails. Never under a real answer. If you set neither a contact page nor support, it does not appear.

SettingWhat it does
Introduction sentenceAbove the links. Empty: "No answer here? Our team can help."
Contact pageThe menu item of your contact page.
Contact link textEmpty: "Write to us from the contact page".
SupportNone, Site page or External link. The next field changes with this choice.
Support pageWith Site page: the menu item of your support page.
Support addressWith External link: the address of your ticket system, full (https://...) or as a site path (/support).
Support link textEmpty: "Open a support ticket".

For questions your site does not cover but another site covers well: a forum, official documentation. Click + to add a row, ten at most.

ColumnExample
Displayed nameJoomla! Forum
Addresshttps://forum.joomla.org
What it coversGeneral Joomla questions: installation, updates, extensions
LanguageEnglish (en-GB), or All

The assistant offers only these links, two at most, and only when the question falls within their topic. So write the What it covers column with care: it is what the AI reads to decide. They appear under "Elsewhere on the web" and open in a new tab. If your own pages answer, they come first.

The settings in the Limits tab

You pay for every question. A question costs two small AI calls with a light model: a few hundred tokens, a fraction of a cent. But on a public site, anyone can ask. These limits are enforced by the server: a visitor cannot get around them.

SettingWhat it doesDefault
Questions per visitor per dayBeyond it, the bubble offers the site's regular search.10
Questions per month, whole siteYour budget. Beyond it, the assistant pauses until the first day of next month.300
Keep unanswered questionsQuestions left unanswered are kept, with no address or identifier.Yes
AI modelLeave empty: Astus uses your provider's small model (Gemini Flash-Lite, Claude Haiku or Mistral Small).Empty

After their first question, visitors see under the input field how many they have left for the day.

Colours

No colour is invented: the bubble takes your template's.

  • With Corpus, it uses its accent colour, background, text colours, corner radius and font, dark mode included. Change the Corpus hue: the bubble follows.
  • With Cassiopeia, it uses the template's primary colour, and Bootstrap's background and text colours.
  • With another template, it falls back on Bootstrap's variables, then on a dark blue.

To force another colour, use the Forced colour setting.

A multilingual site

One module is enough. Leave its language on All.

  • The bubble and panel texts follow the page language.
  • The search only shows pages in that language, plus those marked All.
  • The AI answers in the page language.
  • The pages chosen in the module (privacy, contact, support): pick the page in one language only. If it is associated with its translations in Joomla, each visitor gets the one in their language. Your French privacy page chosen here gives the English page to an English visitor.
  • External links have their Language column: the French-speaking forum for French pages, the English-speaking forum for English pages.

Watch out for custom texts. The assistant's name applies to every language, which is normal for a first name. But a bubble title, an introduction sentence or a link text typed into the module appears as typed in every language. On a multilingual site, leave them empty: they are then translated. If you want to customise them anyway, publish one module per language, with the module's Language field set to each one.

What the visitor sees

  • The bubble, at the bottom of the screen. It never opens by itself.
  • The panel, on the right on a computer, full screen on a phone. It works entirely from the keyboard: the Escape key closes it and returns focus to the bubble.
  • The answers, with one to three links to your pages. When no page fits, a link to the site's regular search.
  • The conversation follows them from page to page during their visit. When they click a suggested page, they arrive there with the panel closed, to read it; the conversation waits for them in the bubble.
  • New conversation: the circular arrow button at the top of the panel clears the exchange.

The assistant has no address of its own: it lives in its bubble. To have a link in your pages open it, for instance "Ask the assistant" at the foot of an article, give that link the data-astus-ouvrir attribute, in the page's HTML code. A click on it opens the panel, wherever the link sits.

Write this link hidden, with the hidden attribute: <a href="#" data-astus-ouvrir hidden>Ask the assistant</a>. Astus shows it on the pages where the assistant is present. Elsewhere, it stays hidden: a link that does nothing would be worse than no link at all.

Unanswered questions

Open Components → Astus → Your extensions. The Visitor assistant block shows whether the module is published, how many questions were asked this month, and lists the latest questions left unanswered.

An unanswered question is a topic your site does not cover yet, or covers with other words. It is your next article.

What leaves the site

  • The visitor's question and the excerpts of the pages found are sent to your AI provider, to write the answer. A line under the input field tells the visitor so, and asks them not to include personal data.
  • The visitor's IP address is used to count their questions for the day. It is hashed with your site's secret and the date: it is never stored in clear and changes every day. Counters are deleted beyond forty days.
  • Unanswered questions are kept with no address or identifier: the question, its language and its date. Set Keep unanswered questions to No if you do not want this.

Remember to mention the assistant in your privacy policy.

When the bubble does not appear

Check in this order:

  1. The module is published, with a position and an assignment to the pages concerned.
  2. The chosen position really exists in your template and on that page.
  3. The System - Astus plugin is enabled.
  4. An AI key is saved in Astus Options.
  5. The Smart Search index contains at least one published page.
  6. Joomla's cache: clear it (System, Maintenance section, Clear Cache) after publishing the module.

The bubble shows but answers "The assistant cannot answer right now": the AI provider refuses the key or does not respond. Try the Astus chat in the administrator: it shows the provider's exact error message. A reached limit gives a different message, which says so clearly.

It answers, but never finds anything: run the Smart Search indexing again, and check that your articles are public and published.