5 lessen die we leerden bij het bouwen van de Wijsbot

02 februari 2017 Inzichten / 5 lessen die we leerden bij het bouwen van de Wijsbot

Wijsbot

Wijsbot, onze sympathieke chatbot, adviseert je na een fijn gesprek over de beste technologie voor jouw e-commerceplatform. Zo’n slimme chatbot is een fantastische asset in een customer service plan. Maar een bot bouwen, gebeurt niet ‘automatisch’. Het is een echte uitdaging op vlak van usability en development. Daarom: 5 hands-on tips om mee te nemen als jij straks een chatbot overweegt!

Tip 1: beheer de conversatie via een CMS

Je conversatiestructuur - dus de vragen en bijbehorende antwoorden - beheer je het makkelijkst in een CMS. Zo spaar je twee keer tijd.

  • Je ontwikkeltijd kan je spenderen aan de eigenlijke bot
  • Mensen zonder technische kennis kunnen de content zelf invoeren, testen en optimaliseren

Wij stelden de conversatiestructuur van de Wijsbot op in Sitecore.

Tip 2: quick Replies zijn meest gebruiksvriendelijk

Om je gebruiker te laten antwoorden op de vragen, zijn er verschillende mogelijkheden: 

je kan hen in een tekstbericht laten antwoorden, maar dat maakt je bot uiteraard veel complexer. Bovendien is het voor de gebruiker verwarrend en minder gebruiksvriendelijk.

Handiger is om te werken met quick replies. Dat zijn antwoordbuttons die prominent boven het tekstveld komen te staan. De gebruiker kiest eenvoudig het antwoord door erop te klikken. De quick replies bevatten tekst, en kunnen eventueel ook een beeld bevatten.

Zelfs bij quick replies moet je er rekening mee houden dat gebruikers mogelijk zelf vragen en antwoorden naar de bot zullen schrijven. Je zal dus een minimum aan natural language processing moeten voorzien om het gesprek op zo’n moment weer in de juiste richting te sturen. 

Of laat de gesprekken volgen door een echte persoon die kan reageren, en die de gebruikers begeleidt. Dat is uiteraard arbeidsintensief en niet altijd haalbaar. Het kan absoluut meerwaarde bieden tijdens bepaalde campagnes.

Tip 3: heldere copy is een must

De copy van je een conversatiestructuur vraagt een specifieke aanpak. Zo zal je ervoor moeten zorgen dat je vragen zeer helder en ondubbelzinnig zijn, zodat de gebruiker makkelijk het antwoord kan bedenken en minder geneigd is een bijvraag te stellen of af te haken. 
Hou er ook rekening mee dat de quick reply-buttons beperkt zijn in karakteraantal. Bevatten ze te veel karakters, dan zal het antwoord niet volledig zichtbaar zijn. Dat maakt het uiteraard minder gebruiksvriendelijk. Omschrijf daarom beschikbare opties zo goed mogelijk in de vragen, zodat je het heel kort en duidelijk kan houden in de antwoorden van de quick replies. 

Tip 4: vergemakkelijk lokaal development

Om de bot te doen werken, moet Facebook aan de server kunnen waarop die bot draait. Programmeer je lokaal op je computer, dan kan Facebook daar natuurlijk niet aan. Daarom zal je tijdens development moeten werken met een applicatie als ngrok zodat de bot op je ontwikkelingsomgeving kan draaien. Via ngrok zet je een tunnel op over https, een vereiste voor Facebook Messenger, en kan je toch lokaal ontwikkelen. Ook kan je op die manier de requests van Facebook aan de bot inspecteren: erg handig en tijdbesparend. Zeker als je nog niet (vaak) met de Facebook Graph API gewerkt hebt.

Tip 5: debug op een andere manier

De code van je chatbot zal je wellicht ook willen debuggen. Normaal doe je dat door je code te laten lopen, even te pauzeren en vervolgens lijn per lijn na te kijken waar het fout loopt. Alleen werkt die normale debugginprocedure niet bij Facebookmessenger. De bot zal immers denken dat er geen tijdige respons komt als je pauzeert, en hij zal de data dus opnieuw aanbieden. Je zal daardoor telkens moeten herbeginnen. Een manier om het toch efficiënt te doen is om te werken met een applicatie als ngrok (zie tip hiervoor). 

Problemen met de bot in productie? Ook dan vraagt de oplossing wat extra zoekwerk, omdat de requests van Facebook naar de bot moeilijk te ontleden zijn. Het kan nuttig zijn om af en toe de webhook aan te passen, zodat de requests lopen via een developmentomgeving en je ze zo kan inspecteren. Zodra je gebruikers met de bot beginnen praten, is het immers moeilijk om daartussen te komen om de problemen op te lossen. 
Die webhook is overigens ook handig om eenvoudig andere bots te ontwikkelen. Dat kan door te differentiëren in de Facebook webhook die wordt aangeroepen. Je kan zo meerdere gelijkaardige bots opzetten waarbij de code opnieuw gebruikt wordt, maar waarbij de content verschilt. 

Soms is een real life gesprek nog altijd beter. Plannen voor een eerste chatbot? Welkom, we smeden ze graag samen!

Alexander Deruwe
.Net Developer / PHP Web Developer

Lees meer

Iedereen bij Wijs deelt zijn expertise, ook Jasper en Evi. Benieuwd naar de laatste nieuwtjes en blogposts? Schrijf je in voor onze nieuwsbrief!