Apr

Building Facebook Messenger chatbot: what they forgot to tell you.

                                     

There are lots of written tutorials and online videos on this subject.

Yet many of them omit important details of the bot building process. These details may vary from one user to another and are difficult to describe in a unilateral fashion. Consequently it is easier for tutorial writers not to mention them at all. We try here to fill the gap and provide some additional clarity.

1. Creating Facebook app.

One of the first steps in building a Facebook Messenger bot is creating a Facebook App. It requires a business Facebook page. This might seem obvious to avid social users yet worth mentioning: a business Facebook page can only be created from a personal Facebook page. If you already have a business Facebook page move on to the next step. If you have a personal Facebook page go on and create a business page. If you are among the lucky ones that live without Facebook presence now is your chance to become like everybody else.

2. Getting SSL certificate.

Next you need to setup a webhook. Your web application is hosted on a web server and the webhook’s role is to establish connection between Facebook and your web application via your web server. In order for the webhook to work you need SSL certificate because Facebook supports only secure connections (HTTPS) to external web servers. So first, you need to purchase it. The costs change from one company to another but it is important to buy a reliable certificate otherwise Facebook might reject it. All major ISP companies offer SSL products. Second, you need to install it on your web server. The installation process can be tricky. Sometimes you can get technical help from the ISP company that sold you the certificate (as a rule of thumb, the bigger the brand the better their technical support is supposed to be. But the cost may be higher too). You can also rely on popular tools, such as keytool command utility, assuming you know how to use them. In any case, it might be a good idea to allocate several days, up to a week, for this step when planning your project.

3. Choosing the server environment.

Your options are (almost) unlimited. Many online tutorials use Heroku which is a cloud-based web application platform, but a simple Tomcat web server would suffice too. Your decisions should be based on your business requirements.  A lightweight server such as Tomcat is a good fit when it comes to web centric, user facing applications. If backend integration comes into play, a web application server should be considered.

Your choice of programming languages is also broad. PHP is one popular option, Java is another but the list by no means ends here. Your chatbot app communicates with Facebook using POST requests, so any language that supports web protocols will work. Again, make decisions having your business goals in mind.

Interested in reading more? Check out our other blogs:

Artificial Intelligence of Chatbots: What Do You Need to Know.

                                                 

While Chatbots have been around for a little while now, their presence is more noticeable thanks to Facebook and Microsoft’s recent advancements.

Initially customers complained about the robot-like experience and the limited functionality of first generation bots and rarely found them useful. The customers were skeptical about how valuable in practice chatbots actually are, which has left recent AI vendors like nmodes with the task to combat the leftover stigma from the poor customer experiences and shortcomings of these initial offerings.

Chatbots, like an IVR?

We’re all used to calling into a contact center and punching numbers into a menu to be routed to the correct agent or service to address our needs. Interactive Voice Response solutions (IVRs) drive this interaction and are basically If/then routing trees that “listen” to the digit entered and “transfer” the user to the appropriate next step. While tremendous advancements in technology have brought voice recognition capabilities, those first generation IVRs were all about automated actions based on prompts.  Enter your account number, press 1 to speak to an agent, etc…

The first generation Chatbots are just like an IVR. They can respond to prompts to progress through a predetermined process or display some canned information like pricing, a contact number, route to an agent, etc., but that was about the extent of it. Still 1stgeneration Chatbots came with 4thgeneration expectations. While these basic functions have tremendous value to a business, the customer expectation is very different when dealing with a phone call vs. a chat session. Consumers have experienced IVR routing for decades whereas chat is still relatively new and is perceived as a conversation with a person, rather than interacting with a machine. Add on the fact that many vendors and consumers mislabeled Chatbots as Artificial Intelligence in the beginning and the expectation of a dynamic, responsive customer experience is even greater.

So it’s no surprise that customers were less than impressed with “Artificial Intelligence” that could only display simple answers and basic information. We were expecting Hal from 2001: A Space Odyssey or KIT from Knight Rider, and we got a pixelated PONG instead.

Let’s talk…

Now, Artificial Intelligence has evolved to be integrated into Chatbots to deliver a more powerful user experience.  While these new versions of Chatbots coming out are powered by Artificial Intelligence, AI powered chat also exists independent of bots in some instances. Confusing? Yeah, I was too.

The beauty behind true Artificial Intelligence is its ability to recognize the context of a conversation and respond with relevant, contextual information dynamically. A customer can now “speak” to technology the same way they would hold a conversation and the AI has the ability to “read” the customer’s intent to provide information quickly and efficiently. No more are you limited to a set of canned responses. The AI can reach in to a wider array of relevant information to craft unique responses based on any number of criteria. While in most cases AI is still limited to a few topics per use case, the technology is growing quickly, making almost daily improvements in functionality and customer experience.

What is even cooler is that the longer the AI is deployed, the more it “learns” and improves the speed and quality of responses. So while the scope of AI interactions is limited at first, the maturity curve is quick, delivering an ever-improving customer experience without having to invest in additional people, processes, or technology. It really is like a “growing up” of technology, right before your eyes. 

READ MORE

Artificial Intelligence Chat Is Evolving Faster Than IVR

                                                         

Although it doesn’t feel like all that long ago, way back in the 90s one of the most important factors to a call center’s success was the ability to route a customer to the right support agent with the IVR (Interactive Voice Response). Countless hours were spent identifying the most efficient call routing patterns and expert agent capabilities to ensure that your request reached the right person quickly. This technology is still widely used today and there are still teams in the largest companies programming IVR systems to accomplish pretty much the same goal.

As the standard for customer support evolved there have been many attempts to improve the function and the customer experience associated with IVRs to reduce hold times and provide more relevant support faster. Even today some companies will use their IVR system as a way to keep a customer on hold, rather than provide a solution, when agents are inundated with calls.

For those of us who’ve worked in the voice industry for some time, we’ve seen first-hand the attempts to accomplish a customer’s need before reaching an agent. First there was expert agent routing that delivered your call to the agent most qualified to help you. Then came advances in voice recognition, which today has evolved to be a very effective tool to increase containment rates and deflect calls from reaching a live agent. My two favorite examples of the power of voice recognition are Cox Communications and Capital One, two examples of great voice recognition and routing.

Our memory, however, is short. It wasn’t so long ago that we were all pulling our hair out punching digits into the phone or constantly repeating “agent”, “Agent”, “AGENT”, AGENT!!!!!”.

Whether it was a limit of computational power or the sheer cost of developing and implementing advanced call center technology, it took decades for phone systems to be able to front end the customer support process as efficiently as they do today. Thankfully we all survived to see it without boiling over from the hypertension usually associated with calling with a customer service department.

Bad customer experience is definitely not the case with Chat Artificial Intelligence (Chat AI). While we seem to hear about the shortcomings of Chat AI like the disconnected conversations and the robotic like responses, these experiences are usually the product of Chatbots with limited AI functionality or early stage deployments. The increases in both computational power and the massive advancements in machine learning are driving excellent customer experiences that improve over time.

When was the last time you heard of technology actually performing better, on its own, without a ton of additional development work or continuous updates? Well, that’s the case with Artificial Intelligence. Like a person, the more experience it has interacting with customers and information, the better it performs with little need to be manually improved or fine-tuned.

Today, AI Chat can be used to answer a large majority of customer requests and because Artificial Intelligence learns as it is used, customers prefer to interact through AI chat to avoid all of the frustrations commonly associated with calling a contact center agent. 

READ MORE