Ga naar inhoud
Denkchat
Features

Live Chat

Met Live Chat kun je real-time gesprekken voeren met bezoekers op je website. De AI chatbot handelt gesprekken automatisch af, maar je kunt op elk moment overnemen voor persoonlijk contact.

Live Chat is een betaalde add-on. Je kunt deze activeren via Instellingen → Add-ons in je dashboard.

Hoe het werkt

Presence (online/offline)

Wanneer je de Live Chats pagina opent, ga je automatisch online. Bezoekers zien dan dat er een medewerker beschikbaar is.

  • Heartbeat: Je browser stuurt elke 30 seconden een signaal om je online-status te vernieuwen
  • Timeout: Als je de pagina sluit of je verbinding wegvalt, word je na ~75 seconden als offline gemarkeerd
  • Toggle: Gebruik de Online/Offline schakelaar rechtsboven om handmatig je status te wijzigen

Bezoekers op de site

Het dashboard toont bezoekers die momenteel op je website zijn:

  • Op de site — Bezoekers die de pagina met je widget open hebben (idle)
  • In gesprek — Bezoekers die actief chatten met de AI
  • Wachtend — Bezoekers die een live medewerker hebben aangevraagd
  • Actief — Bezoekers waarmee je nu live chat

Bezoekersdetectie werkt via een widget-heartbeat (elke 30 seconden). De heartbeat houdt de bezoeker "aanwezig" zolang het tabblad open is.

"Afwezig" bij inactiviteit

Een bezoeker die het tabblad open heeft maar 3 minuten niets doet (geen klik, scroll of toetsaanslag) krijgt een grijs Afwezig badge — zowel bij "Op de site" als bij de "AI gesprekken". De sessie blijft staan en je kunt hem gewoon weer oppakken; de bezoeker verschuift terug naar actief zodra hij weer iets doet.

Wanneer verdwijnt een bezoeker?

Een sessie verdwijnt pas uit de lijst wanneer de bezoeker zijn tabblad sluit (er wordt dan een disconnect-signaal gestuurd dat de sessie als gesloten markeert). Als dat signaal nooit aankomt — bijvoorbeeld bij een harde crash of op mobiel — valt de sessie als vangnet na 30 minuten zonder enige heartbeat alsnog weg.

Bezoeker identificatie

Bezoekers worden geidentificeerd op basis van:

  1. E-mailadres (als ingevuld via lead capture)
  2. Gesprektitel (als beschikbaar)
  3. Locatie (stad/land via IP-geolookup)
  4. Sessie-ID (fallback: "Bezoeker #xxxx")

Gesprek overnemen

Je kunt op twee manieren een gesprek overnemen:

  1. Op verzoek — De bezoeker vraagt om een medewerker (via de AI of een knop). Je ziet een melding in het dashboard.
  2. Proactief — Klik op een bezoeker in de lijst en kies "Neem deel aan gesprek" om zelf contact te initiieren.

Tijdens een live gesprek stopt de AI met antwoorden. Na afloop hervat de AI automatisch.

Notificaties

  • Geluid: Een notificatiegeluid speelt bij nieuwe live chat verzoeken
  • Browser notificaties: Als je toestemming geeft, ontvang je ook desktop-notificaties
  • Geluidsinstellingen worden lokaal opgeslagen per browser

Wanneer een bezoeker vertrekt

Bezoekers sluiten regelmatig hun tabblad zonder afscheid te nemen. Denkchat detecteert dit zodat je niet in het donker zit te typen.

"Afwezig" status in de queue

Live-chats waarin de bezoeker meer dan 75 seconden geen widget-heartbeat heeft gestuurd krijgen een grijs Afwezig badge in plaats van het groene Live badge. 75 seconden = 2,5 × het ping-interval, hoog genoeg om kort wegklikken te vergeven, kort genoeg om duidelijk te zijn.

Dit is een visuele hint — de sessie staat nog open in de database. Als de bezoeker terugkomt en weer ping, krijgt de chat automatisch het Live badge terug.

Automatisch eindigen bij stuur-poging

Als je een bericht probeert te sturen naar een chat waarvan de bezoeker meer dan 2 minuten offline is:

  1. Het bericht wordt niet afgeleverd
  2. De sessie wordt direct gesloten (mode live_ended)
  3. De queue toont de chat als "Gesloten"
  4. Jouw conversatie-venster toont een melding: "De bezoeker is niet meer online. Het gesprek is afgesloten."

Zo weet je binnen één round-trip dat je antwoord nergens is aangekomen — in plaats van te denken dat het is bezorgd. Voor de bezoeker (als die terugkomt): bij heropening van de widget ziet hij een systeembericht dat het gesprek is beëindigd.

Dit gedrag is bewust niet realtime — er is geen presence-tracking via websockets. De detectie gebeurt op het moment dat jij actie onderneemt (een bericht sturen), wat het meeste zegt over wanneer het ertoe doet. Achtergrond: zie ADR-0010.

Wat te doen als je bericht "niet aankwam"

  • Als de bezoeker een e-mailadres heeft achtergelaten (via lead capture): mail ze direct
  • Anders: wacht tot ze terugkomen — bij heropening van de widget zien ze de gespreksgeschiedenis en kunnen een nieuw gesprek starten met de AI

Technische details

Widget integratie

De widget detecteert automatisch of er agents online zijn en toont de live chat optie alleen wanneer dat het geval is. Er is geen extra configuratie nodig.

Bot filtering

Het ping-endpoint filtert automatisch bekende bots en crawlers (Googlebot, Bingbot, etc.) zodat deze niet als bezoekers verschijnen.

Beperkingen

  • Er kan slechts een medewerker tegelijk aan een gesprek deelnemen
  • Notificatie-instellingen worden per browser opgeslagen, niet per account

On this page