How to setup personalized chat for customer engagement using bots

For a business with a   lot of customers and visitors, it is highly laborious  and expensive to  create relevance in customer experience. So we decided to automate the entire conversation process by bringing in relevance and quickly provide answers to what they are looking for or offer quick resolution to a customer query

In order to implement this automation , we  had to make sure that  we should have the following  to create  a true   one-to-one personalization, based on individual customer’s past behavior, purchase, feedback and intent

  • A. Customer/Visitor Identification Methodology
  • B. Access to customer past behavior across all sources
  • C. Access Customer Segmentation tags
  • D. Bot Application and the Keywords Data File
  • E. Product Recommendation tags
  • F. Current Session sentiment tags

The biggest challenge of this exercise would be  to identify the customer and be able to chat intelligently using his past behavior or purchases and recommend a relevant product that is of interest to him or even look at the latest support ticket tagged to the customer and have a resolution for their queries

The fastest way to implement an effective customer engagement automation was to build a custom chat bot and integrate it with an unified customer data stack, which would give us insights about customer’s behavior, products that can be recommended, profile tags and other important tags necessary to build context. So  we structured  the setup/implementation into 3 steps.

Step1: Building a chat bot application

Using the Eliza bot framework which works on array of keywords with decomposition patterns and reassembly, we built a chat application that consisted of the keywords and patterns. The data dictionary file was a dynamic file that synced with the product list, available on the commerce platform for all product related information like current price, availability status, offers and discounts and more.

A custom logic was incorporated to  extract  product related keywords. However the synonyms and preprocessing keywords were added manually. This was an one time effort and would be updated only if there was a new product type or category

Step2: Integrating with Unified Customer Stack

We  zeroed  in on a platform(Plumb5) with unified customer stack, where we could readily implement  points A, B, C and E using APIs. Though we could get the breadth of data about a single customer, we decided to use the following in our application

  • On chat session active; the Plumb5 script would pass the customer id – which would be queried to get a json file containing all information of that user
  • We created  a   data file which contained demographic profile tags (Male, Married, Likes Blue, Cream, Checkered etc), Affintity score and VAPR(Viewed, AddedtoCart, Purchased, Rejected) status for products browsed, Behavior Segment tags, Purchase segment tags, Sentiment tags derived from feedback, call center data and comments and associated products for recommendation

To give a small introduction on why we chose Plumb5 over others is that the unified stack encompasses a scoring model to auto-segment customers based on behavior, purchase and feedback sentiments. The unified stack is centered around a customer and  querying a user id can fetch all user related scores and tag  information

This would allow us to identify user’s demographic profile, past purchases, intent score, segment tags immediately and allow us to change recommendations and offers based on conversational patterns.

For instance, If there was a particular customer on a apparel store, who have browsed through 50 products in the past, is back on the website. It is important to understand the kind of products he was interested in, which would give us insights like product type, color, patterns and more. This would help us recommend or be relevant to their interests, and keep the conversations meaningful

The highlight of this integration was the ability to get tags like colors and patterns. Using object extraction algorithms, color and patterns  were identified from the visitor behavioral journey (from pages/images viewed in the past on website, mobile app or email) and tagged back to the user. So this  gives us the option  to sort and recommend products   based on color and pattern tags

The sentiment tags associated with the product would  give us the option to set rules  to  recommend whether to propose or exclude similar products

Step3: Implement custom current session sentiment check

To keep conversations more contextual to the behavior, we parsed each  line posted by the customer to understand the state of sentiment in the current conversation. We added 4 states (Excited, Normal, Irritated, Doubtful) and readjusted tone of responses based on states

BOTT

The screen of the chat application (prototype). It has to go through its grind of iteration but what excited us to post this article, is the capability to automate a contextual conversation, with very less human intervention.

 

 

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Create a free website or blog at WordPress.com.

Up ↑

%d bloggers like this: