Luxury property insights, tailored suggestions & a 24/7 AI Concierge — one script tag.
Add this once, ideally just before </body>, on every page where you want any of the AI features:
<script src="https://dexa.devsspace.com/widget.js"></script>
The script is ~10 KB, has no dependencies, and does nothing until you initialize one of the three contexts below.
Shows a pre-computed, investor-grade AI analysis of the property the visitor is viewing — positioning summary, estimated gross rental yield, price per area (computed from listing data), ROI potential, market outlook, investor highlights and risk considerations. Place an empty container where the summary should appear (e.g. under the listing description), then initialize it with the listing's property reference (Salesforce ID or unique identifier from the feed). Results are cached server-side, so repeat page loads are instant and cost nothing.
Pilot scope: this experimental integration is enabled for 50 selected Chestertons properties. For any other reference the widget automatically shows: "This is an experimental feature currently available for selected properties only."
<!-- 1. Container in your property template -->
<div id="ai-insights"></div>
<!-- 2. Initialize with the current listing's data -->
<script>
new AIPropertyInsights({
container: '#ai-insights',
propertyRef: 'z0Ab1000002Lj1OuAa', // the listing's sfid or unique identifier
themeColor: '#1e3c72'
});
</script>
Tip: on Chestertons, populate propertyRef from the listing template's Salesforce ID (sfid) or unique identifier — no property data needs to be passed; the platform already has the listing details.
Recommends similar properties to the one being viewed, using vector similarity against the property database. Place a container in your sidebar or below the listing:
<!-- 1. Container -->
<div id="ai-suggestions"></div>
<!-- 2. Initialize -->
<script>
new AIPropertySuggestions({
container: '#ai-suggestions',
propertyRef: 'z0Ab1000002Lj1OuAa', // current listing, used to find similar ones
heading: 'You may also like',
themeColor: '#1e3c72'
});
</script>
Matching criteria: each candidate is scored against the property being viewed — location 35%, property type 25%, price closeness 25%, bedroom count 15%. If the visitor has browsed other pilot properties, their browsing profile (recency-weighted, kept in the browser's localStorage only) contributes 35% of the final score, with the current listing contributing 65%. Already-viewed properties are not re-suggested. Unsupported references show the experimental-feature notice.
A floating multi-lingual chat widget that answers property questions, calculates ROI and captures after-hours leads. No container needed — it attaches itself to the bottom-right corner of the page:
<script>
new AIConciergeWidget({
themeColor: '#1e3c72',
welcomeMessage: 'Welcome to Chestertons! How can I help you today?',
// Optional: on a property page, pass the listing reference so the
// concierge answers questions about THIS property specifically
propertyRef: 'z0Ab1000002Lj1OuAa'
});
</script>
On general pages (home, search results) omit propertyRef — the concierge acts as a general agent. On listing pages include it so answers are grounded in that property. If the reference is outside the 50-property pilot, the chat shows the experimental-feature notice.
Everything together, as you would place it on a listing page (e.g. preprod.chestertons.com):
<!-- containers, placed where you want them in the layout -->
<div id="ai-insights"></div>
<div id="ai-suggestions"></div>
<!-- before </body> -->
<script src="https://dexa.devsspace.com/widget.js"></script>
<script>
// The listing's Salesforce ID (sfid) or unique identifier from your template
var propertyRef = 'z0Ab1000002Lj1OuAa';
new AIPropertyInsights({ container: '#ai-insights', propertyRef: propertyRef, themeColor: '#1e3c72' });
new AIPropertySuggestions({ container: '#ai-suggestions', propertyRef: propertyRef, themeColor: '#1e3c72' });
new AIConciergeWidget({ themeColor: '#1e3c72', propertyRef: propertyRef,
welcomeMessage: 'Welcome to Chestertons! How can I help you today?' });
</script>