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:

HOW TO MAKE A SUCCESSFUL CHATBOT (BUSINESS TIPS)


So you decided that your business needs a chatbot.

And you’ve probably heard conflicting opinions on chatbots - some praise them for the ease with which they can offer customer service, others criticize for their lack of true intelligence.

How to proceed?

At nmodes, we have been working on chatbots longer than most, starting long before they became popular.

Here is how we advise mainstream businesses to approach the chatbot quandary.




1. SET YOUR BUSINESS GOALS  

Remember that users prefer to spend less time talking to your chatbot, not more. A user wants to resolve specific issues related to your brand, not engage in a soul searching chit chat about the meaning of life, politics or sports. A user expects your chatbot to provide the answer to a particular question, and the faster the chatbot can do it the more satisfying customer experience it will create.  

All that means is that your chatbot does not need to have the capabilities of a Siri (generic conversational AI solution). Instead, it has to understand really well the conversational domains related to your business. It does not need to support much of the rest of the language.

And so you need to decide which business related topics you want your chatbot to cover and not to venture outside of these topics.

Typically chatbot topics revolve around sales process, customer support, sometimes they include lead generation, FAQs, problem resolution, and reputation management.


2. DEFINE THE DIALOGS

Chatbots are about conversations. After you have decided what kind of topics you want your chatbot to support it is time to get a bit more specific and define the dialogs. Ask yourself the following question: what do you want to achieve at the end of the chatbot’s interaction with the customer. For example, if you are dealing with the sales process, the end result could be a customer making a purchase, or a customer providing contact information for the sales team to follow up on, or  when a customer indicates what product he or she is interested in.

Build a dialog with the end result in mind.

We sometimes call this creating the conversation flow.

Of course, you can create as many conversation flows as required to support your business model.



3. DECIDE IF YOU NEED AI  

The are two types of chatbots - based on multiple choice buttons and based on natural language conversations.

Don’t discard buttons. Remember that a chabot is expected to make the user experience as enjoyable and as friendly as possible. Buttons often make conversation super easy and fun (the user simply clicks a button, what can be easier?).  In many business cases buttons provide a fast and efficient way to ask relevant questions and keep the conversation flowing towards the desired conclusion.

Using buttons also makes chatbot development simpler and reduces the development costs.

The second option is to make a chatbot support natural language conversations, in which case you will need AI.

Pick the AI solution you want to work with.

The good news is that there are several decent products in the market so you have a choice.

The not so good news is that they all are relatively complicated and require a certain level of technical knowledge.

(And you can always talk to us - we provide AI solutions that do not require any technical knowledge).



4. DECIDE IF YOU WANT TO DEVELOP YOUR CHATBOT IN HOUSE OR OUTSOURCE

Unless you want to position your business as an AI company you likely do not want to develop it on your own. There are several reasons for that.

First, AI technology is complex and its complexity if often underestimated. You will need top AI expertise and will probably need more of it than you anticipate.

Second, as Cameron Schuler recently observed, there is a significant shortage of AI experts and it will be difficult for you to find one.

Third, and perhaps most importantly, if you are a mainstream business developing in-house AI expertise is not part of your business model.

Bringing in an AI partner to help with your AI needs is a reasonable option for many businesses. Of course, the downside is additional immediate costs.  



Following the simple steps above and answering these questions will help you navigate the sophisticated world of AI, decide what kind of chatbot does your business require and how to approach the process of creating it.

READ MORE

Building 24x7x365 Customer Support and Online Sales... FOR FREE (Almost)

                                                             

We’ve all seen the numbers and they tell us that customers are more likely to make a purchase if they’re able to speak to a representative at the time of purchase. Study after study shows that if you can prevent even the smallest percentage of customer defection revenues and profitability can literally skyrocket as much as 80%. Just as important, the faster is your service the better is customer experience.

The same can be said for customer support. More than 70% of customers say that responsive customer support providing fast, courteous, relevant and contextual answers to their inquiries are the most important factors in determining the quality of customer service and the likelihood of that customer doing business with the company in the future.

As our world becomes even more “on-demand” and global, providing around the clock sales and customer support is quickly becoming a key differentiator. Customer’s desire to do business with companies on their own schedule and terms are driving financial growth and customer loyalty across all sectors and industries. Companies that neglect this “always on” requirement not only lose out, but need to find ways to be competitive.

Unfortunately, only the largest companies have the financial resources to deliver 24x7 customer support and sales operations. Still many of the largest companies can’t justify the expense of building out and staffing a 24 hour contact center. While outsourcing to a BPO is always an option, statistics show a diminishing return for outsource customer and sales support operations.

As customers continue to drive up the use of chat and social communications for customer support and sales, along with the incredible growth in Artificial Intelligence technology, smart companies on the forefront of customer service now have the ability to offer around the clock service for a large portion of their customers.

Think about this: While the average phone support call has previously been measured at almost 6 minutes, the average chat session lasts just 42 seconds, indicating that the vast majority of customer support issues are simple and only require limited information in order to leave a customer informed and satisfied with the interaction.

Today Artificial Intelligence can deliver a personalized, informed, and contextually relevant response to just about any question related to most customer inquiries. Add on the fact that AI actually “learns” as it interacts with people and information and the value to the customer and the vendor actually increases over time.  Wouldn’t we all like to have immediate service with zero wait times and fast, courteous response that immediately addresses our needs? I know I would.

Implementing Artificial Intelligence for customer service comes down to an application cost that, when amortized over the number of chat or social sessions it can handle, reduces customer support costs to as little as 10% of traditional contact center and agent expenses.

The one objection to relying on Artificial Intelligence in the contact center is the customer experience. There’s enough bad press out there about Chatbots and broken, robotic responses that are sometimes irrelevant that some customer support professionals are wary of any form or automation. My response to that is, while those were valid concerns; just take a look at Siri today vs. 2 years ago. The quality of responses has dramatically improved, as has the customer perception and usefulness.

What are your thoughts about Artificial Intelligence in the contact center? We’d love to hear from you.

READ MORE