Cookie-toestemming en anonieme proactieve triggers
Website-toestemming en de widget zijn gescheiden
Je website blijft verantwoordelijk voor zijn eigen toestemmingsbanner en Privacyverklaring. De toestemmingsinterface van de widget vervangt je consent-managementplatform (CMP) niet, en WebChatAgent voegt geen tweede banner toe binnen de ingesloten widget.
De widget start in anonieme privacymodus wanneer tracking-consent wordt weggelaten of is ingesteld op unknown. In deze modus blijven lokale triggerbeslissingen in het geheugen en worden ze niet verzonden naar WebChatAgent.
<!-- tracking-consent is optional; omitted means unknown -->
<web-chat-agent chatbot-id="YOUR_ID"></web-chat-agent>
Wat werkt zonder toestemmingssignaal
| Functie | Zonder een toestemmingssignaal |
|---|---|
| Tijd op pagina | Werkt lokaal in het geheugen |
| Scrolldiepte | Werkt lokaal in het geheugen |
| Verlaat-intentie | Werkt lokaal in het geheugen |
| Inactiviteit | Werkt lokaal in het geheugen |
| URL-match | Werkt voor de huidige pagina |
| Sectiezichtbaarheid | Werkt lokaal in het geheugen |
| Rage-klik | Werkt lokaal in het geheugen |
| Bezochte pagina's | Werkt tijdens SPA-navigatie binnen hetzelfde document; reset na een volledige herlaadbeurt |
| Terugkerende bezoeker | Uitgeschakeld |
| AI-gegenereerde proactieve begroeting | Gebruikt de geconfigureerde statische fallback |
| Trigger-analyse voorafgaand aan chat-interactie | Uitgeschakeld |
| Permanente/dagelijkse cooldown | Valt terug op de levensduur van het huidige document |
| Permanent afwijzen | Blijft alleen actief totdat het document opnieuw wordt geladen |
Voordat een bezoeker interactie heeft met de chat, maakt de anonieme trggerevaluatie geen bezoekers-ID aan, schrijft deze geen proactieve status naar de browseropslag en stuurt deze geen gedragsgebeurtenissen naar WebChatAgent.
Toestemmingsinterface
Gebruik het optionele attribuut wanneer je toestemmingsbeheerder de keuze van de bezoeker al kent:
<web-chat-agent
chatbot-id="YOUR_ID"
tracking-consent="granted"
></web-chat-agent>
Toegestane waarden zijn unknown, denied en granted. Ontbrekende en ongeldige waarden worden behandeld als unknown.
Voor toestemmingswijzigingen zonder de pagina opnieuw te laden, verzend je:
window.dispatchEvent(
new CustomEvent('webchatagent:consent', {
detail: { tracking: 'granted' }
})
)
Verstuur denied wanneer toestemming is geweigerd of ingetrokken. WebChatAgent stopt dan met optionele tracking en verwijdert de status van proactieve triggers plus toestemmingsafhankelijke UI-personalisatie. Functionele opslag voor chatsessies blijft beschikbaar nadat de bezoeker de chat actief gebruikt.
Bij whitelabel-implementaties werkt de merkneutrale gebeurtenisnaam chat-widget:consent identiek, gebruik deze wanneer de insluitende pagina niet naar de platformnaam mag verwijzen.
granted pas nadat je CMP een geldige keuze heeft geregistreerd voor de categorie die elke ingeschakelde functie dekt. AI-gegenereerde begroetingen, bezoekersherkenning en trigger-analyse vereisen mogelijk andere beschrijvingen of categorieën in je configuratie. Bevestig de toewijzing met je privacyadviseur.Generieke CMP-adapter
function updateWebChatAgentConsent(isGranted) {
window.dispatchEvent(
new CustomEvent('webchatagent:consent', {
detail: { tracking: isGranted ? 'granted' : 'denied' }
})
)
}
// Call this from your CMP's consent-ready and consent-change callbacks.
updateWebChatAgentConsent(false)
Cookiebot
Cookiebot toont de huidige categoriebeslissingen via Cookiebot.consent en meldt wijzigingen via browsergebeurtenissen. Kies de categorie die overeenkomt met je gedocumenteerde doeleinden:
function syncWebChatAgentWithCookiebot() {
const consent = window.Cookiebot?.consent
const granted = Boolean(consent?.preferences && consent?.statistics)
updateWebChatAgentConsent(granted)
}
window.addEventListener('CookiebotOnConsentReady', syncWebChatAgentWithCookiebot)
window.addEventListener('CookiebotOnAccept', syncWebChatAgentWithCookiebot)
window.addEventListener('CookiebotOnDecline', syncWebChatAgentWithCookiebot)
Raadpleeg de Cookiebot developer reference voor de actuele categorie-eigenschappen en gebeurtenissen.
Complianz
Complianz biedt cmplz_has_consent(category) en status-/intrekkingshooks:
function syncWebChatAgentWithComplianz() {
const granted = typeof window.cmplz_has_consent === 'function'
&& window.cmplz_has_consent('marketing')
updateWebChatAgentConsent(granted)
}
jQuery(document).on(
'cmplz_status_change cmplz_revoke cmplz_enable_category',
syncWebChatAgentWithComplianz
)
Vervang marketing als je gedocumenteerde CMP-configuratie een andere categorie gebruikt. Raadpleeg de Complianz integration reference.
Borlabs Cookie 3
Maak een WebChatAgent-dienst aan in de juiste Borlabs-dienstgroep en gebruik de ID van die groep:
function syncWebChatAgentWithBorlabs() {
const granted = Boolean(
window.BorlabsCookie?.Consents?.hasConsentForServiceGroup('marketing')
)
updateWebChatAgentConsent(granted)
}
window.addEventListener('borlabs-cookie-after-init', syncWebChatAgentWithBorlabs)
window.addEventListener('borlabs-cookie-consent-saved', syncWebChatAgentWithBorlabs)
Vervang marketing door de dienstgroep-ID die in je Borlabs-configuratie wordt gebruikt. Raadpleeg de Borlabs Cookie JavaScript API.
Overzicht browseropslag
| Sleutel | Opslag | Aangemaakt wanneer | Doel |
|---|---|---|---|
chatSessionId_<chatbotId> | localStorage | Bezoeker gebruikt chat actief | De functionele conversatie hervatten |
chatRecentSessions_<chatbotId> | localStorage | Bezoeker gebruikt functies voor recente chats | Lokale lijst met bekende chatsessies |
chatEndedSessions_<chatbotId> | localStorage | Bezoeker beëindigt een chat | Beëindigde sessies buiten de actieve weergave houden |
chatWidgetIsOpen | localStorage | Bezoeker opent of sluit de zwevende widget | Functionele UI-status herstellen |
livechat_timeout_<chatbotId>_<sessionId> | localStorage | Bezoeker vraagt live chat aan | De time-out voor live chat hervatten |
chatThumbRatings_<chatbotId> | localStorage | Toestemming voor tracking is verleend en feedback is verzonden | Lokale feedbackselectie onthouden |
wca_privacy_box_dismissed_<chatbotId> | sessionStorage | Toestemming voor tracking is verleend en melding is afgewezen | De melding verbergen in het huidige tabblad |
wca_speech_bubble_dismissed_<chatbotId> | sessionStorage | Toestemming voor tracking is verleend en spraakbubbel is afgewezen | De spraakbubbel verbergen in het huidige tabblad |
wca_triggers_<chatbotId>_* | localStorage/sessionStorage | Toestemming voor tracking is verleend | Terugkerende bezoeken, tellers, cooldowns en afwijsstatus |
Je Privacyverklaring moet de opslag en serverzijde-verwerking beschrijven die daadwerkelijk zijn ingeschakeld in je configuratie. Deze documentatie biedt technische richtlijnen en is geen vervanging voor juridisch advies.
