Lina K.
- Workspace
- Marbel Hotels
- Signed in
- Through Marbel, 09:12
EVO Support answers your customers from approved knowledge and their own records, and brings in your team the moment a person should decide.
Your payment is still being reviewed, which can take up to 24 hours. Booking BK-48213 was placed at 09:14 today, so you should have your confirmation by tomorrow morning.
If it hasn't arrived by then, reply here and I'll bring in the Marbel team.
Sara from Marbel Support can step in at any time.
What happens between a customer's message and a useful reply, and where a person comes in.
Lina is signed in on Marbel's booking page. EVO Support knows who she is because Marbel's server said so, not because her browser did.
Before anything is looked up, EVO works out what the message is really asking and what it would take to answer well.
Only published, customer-visible articles are searched, and every passage is checked against the current version before it can be used.
A fixed, read-only lookup returns the booking that belongs to Lina. Card details and internal notes never reach the model.
The reply is built from the policy and the record, and it says where each part came from.
EVO can read the booking but can't change it. The conversation moves to Sara with everything already assembled. Nothing is repeated, and AI replies stop.
Checking the confirmation policy and your booking
Your payment is still being reviewed, which can take up to 24 hours. Booking BK-48213 was placed at 09:14 today, so you should have your confirmation by tomorrow morning.
If it hasn't arrived by then, reply here and I'll bring in the Marbel team.
Needs the confirmation policy and the current status of her booking.
Confirmation is sent within ten minutes of payment. If the payment is under review, confirmation can take up to 24 hours.
Lina's booking BK-48213 is waiting on a payment review. She asked to cancel it. Policy and booking status already checked.
EVO Support doesn't search the web or improvise from training data. It reads the articles your team wrote and published, and it says which one it used.
Documentation, FAQs, policies, operating instructions, product details: whatever your team would otherwise explain again and again. Articles are written in the app or imported from text and Markdown files, in English or Arabic.
Each article is for customers or for staff only. Publishing makes a version live. A draft never changes what is published, and unpublishing withdraws an article at once. Before the Booking confirmations article reached Lina, it was checked against the version that is published right now.
What is true for every customer: how confirmations work, what the cancellation policy says, when check-in opens. Written, versioned and published by your team. Searched for every question.
What is true for one customer: her booking, its status, when it was placed. Never copied into the knowledge base. Read, when the question needs it, through a fixed lookup that returns only her records and only the fields you approved.
Three connections, each one small and explicit: the chat on your pages, the identity your server already knows, and the records you choose to make readable.
One script tag adds the chat to a website, a single-page app or a mobile WebView. The conversation itself runs in an isolated, hosted frame, styled with your colour and welcome text, in English or Arabic, and only on the sites you allow.
<script>
window.AISupport = window.AISupport || [];
AISupport.push(['init', {
workspaceId: 'marbel-hotels', // public configuration, not a secret
locale: 'en', // or 'ar'
getAssertion: async () => { // only when a customer is signed in
const r = await fetch('/support/assertion', { method: 'POST' });
return (await r.json()).assertion;
},
}]);
</script>
<script async src="https://support.example/widget/v1/loader.js"></script>When a customer is signed in on your site, your backend signs a short-lived statement of who they are. EVO Support verifies it before any record is read. Anything a browser says about itself is never proof of identity.
Lina signs in, the way she already does.
Signs a short-lived assertion for her. The signing key stays on your backend.
Checks the signature, issuer, audience and expiry, then opens a session for Lina in your workspace only.
Live answers about a booking or an order come from a short list of fixed, read-only lookups that you enable one by one. Each runs under a least-privilege database account that can only read the tables and columns you selected, and its result is trimmed to the approved fields before it reaches the model.
There is no general database access and no way to write. EVO Support can tell Lina where her booking stands. It cannot change it.
get_booking_status(reference)EnabledReturns status, placed, stay, guestsget_my_bookings()EnabledReturns reference, stay, statusget_order_status(reference)Not configuredThe customer's identity comes from the session, never from the message. A reference typed into the chat is only a filter, not a key to someone else's record.
Some requests need judgment, an exception, or an action only your team can take. Handing one over isn't the system failing. It is the system working as designed.
A customer who asks for a person gets one, first time. Your team also sets response targets, and is alerted when one passes.
Can I add a second room to my stay?
Waiting for a personCan you just cancel it, then?
ResolvedThe invoice shows the wrong company name.
Open, mineTicket MB-1042 opened, assigned to Sara. AI replies paused.
Reservations confirmed the hold can be released without a fee. Sara, 09:18
The same question, handled twice. No numbers invented; just where the work goes.
An assistant is only as trustworthy as its boundaries. These are drawn in the database and the server, where the model cannot reach them, and shown to your team in plain words.
Five steps, each one visible in the readiness overview until it is done. The assistant stays off until you turn it on, and human support works from day one.
One workspace per platform you support. Invite your team by email and give each person a role: owner, administrator, agent or viewer.
Write articles in the app or import text and Markdown files. Mark each one for customers or for staff only, then publish what the assistant may use.
Add the script tag to your pages and list the sites allowed to embed it. If customers sign in on your site, give your backend an identity key so EVO Support knows who is asking.
Add your own AI key, pick a model and a monthly limit, and turn the assistant on when you are ready. Set support hours, an away message, response targets and the privacy notice shown in the chat.
Ask the assistant a real question from the widget preview, hand the conversation to a person, and watch the readiness overview go green before you switch it on for customers.