CHATBOT AGENCY BLOG
Here you can discover everything about conversational UI and chatbots: best practices, ideas and AI related news brought to you by the Bot Forge team!
Here you can discover everything about conversational UI and chatbots: best practices, ideas and AI related news brought to you by the Bot Forge team!
We build a lot of different types of chatbots at The Bot Forge and deliver these to a variety of platforms such as Web, Facebook Messenger, Slack or WhatsApp. To create our chat bots we often use different AI platforms which offer more suitable features for a specific project. All the major cloud and open-source providers have adopted similar sets of features for their conversational AI platforms and provide good NLU (Natural Language Understanding). There are also some strong options for open source privately hosted systems.
We wanted to spend some time looking at some of the more popular AI platforms in a bit more depth in this series. To help look at each one we have focused on the following specific features:
A conversational AI platform should provide User Interface(UI) tools to plan conversational flow and help train and update the system
As well as intent and entities, a context object allows the system to keep track of context discussed within the conversation, other information about the user’s situation, and where the conversation is up to. This is often the NLP feature which is vital in creating a complex conversation beyond a simple FAQ bot.
Looking at the current position of a conversation, the context and the user’s last utterance with intents and entities all come together as rules to manage the conversational flow. This can be challenging to create and manage so a platforms’ tools in the form of a flow engine, in code and complimented by a visual tool can provide advantages depending on the chatbot project itself. Other features such as slot-filling (ensuring
that all the entities for an intent are present, and prompting the user for any that are missing) can be important.
Whilst most platforms fall into this category some systems use machine learning to learn from test conversational data and then create a probabilistic model to control flow. These systems rely on large datasets.
Having a conversational platform that supports your target channel out-of-the-box can substantially speed up delivery of a chatbot solution and your flexibility in using the same conversational engine for a different integration. This is one of the reasons we really like Dialogflow’s tooling.
Whist the focus of a conversational AI platform is understanding pure text, messaging systems and web interfaces often involve other content, such as buttons, images, emojis, URLs and voice input/output. The ability of a platform to support these features is important to create a rich user experience and help to manage the conversational flow.
Bot responses can be enhanced by integrating information from the user with information from internal or external web services. We use this type of ability a lot in creating our chatbots and in our opinion feel its one of the most powerful features of a chatbot solution. With this in mind, the ability to configure calls to external services from within a conversation and use responses to manage conversational flow is important in building chatbot conversations.
Instead of creating entity types such as dates, places or currencies for each project some systems provide these pre-trained to deal with complex variations. In the same way, common user intents and utterances such as small-talk is offered pre-trained from some platforms.
The key to creating a successful chatbot is that they need to be constantly trained and monitored. To aid in continuously improving the system once initially launched, the
conversational tools should provide a dashboard of the user conversations; showing stats for responses, user interactions and other metrics. Export of these logs is also useful to import into other systems. Other important AI features enable easily training missed intents, catching bad sentiments and monitoring flow.
It can be important to take into account what libraries are provided by an AI platform and in what supported languages. In the end, this may favour your choice of solution if it fits with your current codebase or teams skillset. However, as a full-stack javascript software house, we find Node.JS to be our server stack of choice when building our bots and most AI platforms cater for this.
These are the costs for the cloud hosting and cloud NLU solutions. An important aspect to consider particularly for large scale enterprise chatbots handling large volumes of traffic where NLU costs can reach £1000s a month.
Many providers offer a free tier for their AI platform solutions. A paid for tier will then normally offer enhanced versions of the service with enterprise focused features and support for greater volume and performance. Costs tend to be charged in one of 3 ways, per API call, per conversation or daily active user and also per active monthly user (normally subscriptions are in tiers). We try and look at costs as publicly published for the paid-for plans suitable for enterprise use in a shared public cloud environment.
Keeping all these feature sets in mind we hope to look at the following AI platforms over the coming posts.
Please get in touch if you feel we should look at a platform which we have missed!
Our first AI platform blog post will be coming soon!
In this article, I’m going to cover WhatsApp business and dive into creating a WhatsApp chatbot.
It’s official, WhatsApp has one or two users…yes, that’s the understatement of the year!
In fact, WhatsApp has 1.5 billion users from 180 countries, that makes it the most popular instant messaging app worldwide. This messenger is handy for being secure, fast, and easy to use. It’s not just about the massive number of users though, it’s about engagement. WhatsApp users send about 65 billion messages per day, that is about 750,000 messages per second! WhatsApp usage shows no signs of slowing down.
In 2018 WhatsApp announced the official launch of their platform made for business. This allows companies to communicate with clients using WhatsApp for Business instead of having to use their own personal numbers. This will allow companies to automate, sort, and respond to messages on this incredibly popular messaging channel.
As of May 2018 WhatsApp for business had 3 million users.
Whatsapp is well known for protecting your data which includes chats, documents, status updates, photos, videos, voice messages, and calls via WhatsApp’s end-to-end encryption.
As a customer, you know you’re interacting with an officially approved business and all of your rights are protected by WhatsApp’s secure environment so its no doubt that the Whatsapp business client offering is becoming increasingly popular.
The WhatsApp business client has been built with the SME in mind. The app can help you provide customer support and deliver important notifications to your customers. These WhatsApp Business accounts help brands to improve brand loyalty. A business profile gives the company a familiar “face” and identity.
First off you need to grab the Whatsapp Business App for your mobile phone of choice which is free to download.
Users can create a business profile with helpful information for their customers such as their address, business description, email address, and website.
Steps- Update your business: Open the Whatsapp Business app → Open Settings → Open Business Setting → Business Profile.
The Business client provides some really useful automated messaging functionality.
You can tailor your own greeting message and send to customers who message you for the first time or after 14 days of inactivity.
Businesses can create their own standard quick reply messages to streamline their conversations and save time.
You can tailor your own away message and reply when you are away.
Steps- Use messaging tools: Open the Whatsapp Business app → Open Settings → Open Business Setting → Select Away message/Greeting message/Quick replies.
Another useful feature is the ability to organise chats and contacts with labels.
Steps- Use Labels: Open the Whatsapp Business app → Open Chat → Open Menu → Select Label chat
The business app also provides statistics covering messages sent, delivered, read, received.
Steps- Access Statistics: Open the Whatsapp Business app → Open Settings → Open Business Setting → Statistics.
WhatsApp Business API is the enterprise offering for the platform.
The prerequisites for using WhatsApp commercially via the WhatsApp Business API is to either apply for an own account directly from WhatsApp or to buy access from one of the official Solution Providers.
Access to the WhatsApp API has been limited, to say the least, the program is currently in a limited public preview, In fact, at the time of writing, there are only around 40+ companies listed as solution providers. You can still request access but there is no guarantee when/if this will be provided, I think Facebook will be favouring end client/solution provider applications with large estimated numbers of messages. Once you have gained access you will also have the technical challenges of getting set up. A quicker/simpler option is to use one of the solution providers for now. At least whilst you wait for your application access to be approved!
For the purposes of this article, we are going to look at using Twilio as our WhatsApp solution provider.
A WhatsApp chatbot is similar to a Facebook Messenger Chatbot. When a user interacts (WhatsApps) your number then the response is handled by your chatbot. So what are the benefits?
We are going to look at building a WhatsApp chatbot for a bike shop. The chatbot will be able to answer a simple set of bike shop related questions and book your bike in for a service. We will use Dialogflow to create our chatbot and then connect this to the Twilio Sandbox for WhatsApp. The sandbox enables us to prototype with WhatsApp immediately, without waiting for the approval of our number.
There are some things to consider using the sandbox:
If you tell your customers that you will be using their email address and mobile phone number to send them information about your services and products, you should do that and nothing more.
Signing up with Twilio is the next step and it’s free with no need to provide a credit card, bonus!
We won’t go into detail here into how to create a Dialogflow agent you can learn more here there are are plenty of good resources, we recommend taking a look at this. If you want to use the agent we have built you can create an agent and use the restore from zip feature of the Dialogflow console to import our agent which you can download from here.
In the Dialogflow console → Under integrations → select Twilio (Text messaging) → in the settings window, there will be a Request URL (seen here in green).
Copy this URL and go to your Twilio account in the Sandbox configuration and paste into the “WHEN A MESSAGE COMES IN FIELD”.
Once you’ve done that go back to your Dialogflow Twilio settings window and input the rest of the account details: Make sure you have your Twilio API Credentials to hand, you will need Account SID, Auth Token, Phone number — Used to authenticate REST API requests.
Steps- API Credentials: Log-into Twilio → Open Dashboard → Open Settings → General.
At this point, if you have properly carried out all the steps you should be able to send a WhatsApp message to your number and the response will come from the Dialogflow chatbot. You can see ours below. Notice the sandbox limitation; Sandbox numbers are branded as Twilio numbers.
Our WhatsApp chatbot in action
There are loads of other cool features we could add to our Bike Shop WhatsApp chatbot, for example:
Use the Twilio WhatsApp API to send customer notification that their bike is ready! You can read more from the API Reference here.
The WhatsApp message can be sent using a pre-provisioned template e.g
Hi {{1}} your bike {{2}} is completed and can be collected when it’s convenient, the cost for the work is {{3}}. Details of work carried out : {{4}}
Once your Twilio number has been enabled for WhatsApp you can also create your own templates.
If you want to start using the Twilio API in production you need to enable your Twilio numbers for WhatsApp. This involves initiating a request via Twilio. Fill out this form to send the request. Once you have provisioned your numbers you also need to provide Twilio with your Facebook Business Manager ID.
Trengo offers an omnichannel collaborative platform for their customers. They provide the ability support enquiries across multi channels. One of the cool things about their technology is that their platform supports Business WhatsApp and they have the ability to create chatbots on their platform which can be directly linked to a Dialogflow agent, which is great if you want to create a Dialogflow powered chatbot and easily connect to a WhatsApp number!
WhatsApp is a platform that connects billions of users every day and is now granting businesses endless possibilities for reaching and engaging with its massive audience. Using WhatsApp for business, companies are now able to interact with customers on the platform that they love and already use.
Hopefully, you’ve enjoyed following the article and you can see the potential for using WhatsApp chatbots in your business.
We looked at Twilio as the WhatsApp API provider, however, there are other providers which we will be looking to cover in the future, here are some of them:
https://www.clickatell.com/products/whatsapp
https://www.messagebird.com/en/whatsapp
https://www.nexmo.com/products/messages/whatsapp
General Data Protection Regulation (GDPR) entered into force and was fully operational as of May 25th 2018. You can read all about it here. The new regulations brought a series of changes and improvements while strengthening the current regulatory framework. The GDPR applies to any website or mobile application collecting data from EU residents and that means chatbots and voice assistants as well!
Despite some myths and misunderstandings around GDPR the regulations there has been some success in the new policy despite still being described as being in a transition period. With incidents such as the Cambridge Analytica scandal last year users are even more concerned as to what we do with their data.
If you use chatbots as part of your sales and marketing strategies, you’ll need to make sure the processes you use to collect consumers’ personal data, as well as what you do with this data are in line with GDPR. Read on for some tips on how to ensure that your chatbots are GDPR compliant.
Consent is not valid unless it is “freely given, specific, informed, and unambiguous.” Basically, that means a “clicked” agreement is required.
For websites your privacy notice is a great place to get consent from users. Here is a great example:
One of the rules of the GDPR is that all companies utilizing consumer data need to have a clearly stated privacy policy which contains the following pertinent information:
For a chatbot, it should provide users with a clear-cut, transparent, distinguishable, and easily accessible form to understand what data is collected, and how it will be used by the bot and organization. This needs to be provided at the start of the conversation and also its often a good idea to provide an easy way to access this in future e.g for bots supporting NLP a free text intent or part of an integration menu such as Facebook Messengers:
We’ve found that having a privacy page in place listing all the important information is also an effective way to aid in compliance.
According to the GDPR, users should be able to request that all their Personal Data is removed.
Chatbots need an intent to support this e.g ‘please forget my data’, ‘delete my personal data’, etc. Or this could be part of the menu system:
This data removal request needs to be followed up correctly.
Users should be able to retrieve their Personal Data.
Chatbot users should be provided with a clear and simple way to access, review and download copies of their data (in an electronic form) that was collected, free of charge. This can be actioned in multiple ways. You could either build a dialogue for this e.g ‘please tell me what data you are storing’, ‘can you send me my data’. The response should present the data to the user or send an email to start the process.
This is vital for becoming GDPR compliant. Your online chatbot may be an informal way of collecting personal data, but it is still considered to be a data collecting and processing tool and so will fall under the GDPR legislation.
Clearly stating what information is used for is key. This means that you are only able to use the data for the stated purposes, such as sending newsletters, emails, SMS marketing messages or contacting users on Facebook Messenger.
Implement a mechanism to make sure users are clear as to what you will do with their data. This can be added as part of a welcome or supported by intent match or part of the privacy policy.
If you tell your customers that you will be using their email address and mobile phone number to send them information about your services and products, you should do that and nothing more.
Chatbots provide an engaging interaction medium for users which is no doubt enhanced by a personalised experience. This will often mean that a chatbot needs to collect some personal data from their users. When designing chatbots always remember to keep privacy first in mind. With a chatbot, it is easy to ask for a users permission and explain why you need it because you are already in a dialogue with your user.
Use opportunities when available to clarify and advise users during the conversation.
There are two important roles defined in the GDPR that affect you as a company and the chatbot you build. Firstly, the data controller and secondly, the data processor:
Data controllers are the decision makers about which personal data gets collected, stored and processed – so most companies are considered controllers!
Chatbots are all about data. If you want to create a solid conversational experience, you need to use Natural Language Understanding (NLU) and dialogue systems. The underlying machine learning algorithms need training data in order to improve and learn. Collecting this data is necessary to train the models and the more data you have the better the bot performs.
Data is essential – but it’s also vital to reduce the risk of data breaches and adhere to the GDPR data processing principles.
With GDPR you are prohibited to store this data without explicit consent from users or if there is no legitimate reason to store this data. If you do have a need to store this data to improve your chatbot’s interaction with consumers, you may not do so unless you have explicit consent.
It’s common for many web and messenger servers to keep different types of logs, such as access, error or security audit logs. These logs might hold personal data such as IDs, IPs, and even names.
Reviewing your logs will allow you to find any personal data and deal with it accordingly.
At The Bot Forge we use the Dialogflow natural language processing engine to create our chatbots. Using Google Cloud services means we can rely on GDPR being upheld with regards to our chatbot data:
We have peace of mind as compliance with the GDPR is a top priority for Google Cloud. It’s important to have this confidence when using third-party services which handle your data.
Want to talk about GDPR and data privacy? Get in touch if you’d like to chat.
Did you know that more than 100,000 businesses are using chatbots to help optimize their customer experience?
Customers want instant replies, and chatbots are the way to achieve this, according to a 2018 Forbes article.
Here at The Bot Forge, we have been providing custom software development and AI services since 2018.
After working with many clients in many industries, we are thrilled to announce that Clutch, a B2B ratings and reviews firm, has listed us as one of the leading AI companies in the UK.
Additionally, we are on Clutch’s Leaders Matrix for top AI developers in the UK. The Leaders Matrix shows companies that are at the top of their targeted markets. The Bot Forge is one of the nine leaders on the Matrix.
We could not have received this recognition without our clients. We have worked with small and mid-market businesses, and these businesses represent a variety of industries.
The industries they are in include the business services, financial services, and IT industries.
We received a 5-star rating from Stitch AI, a digital engagement solutions company. We provided web development services to the company; initially, Stitch AI needed assistance in building a web portal where it could create advanced lead generation chatbots for any industry vertical.
We created a platform that helps the client manage its customers’ chatbots, and we continuously work with the client. The client has been happy with the quality of our work.
“…we’re happy with their work, and they’ve fixed any bugs in a timely manner.”
— Managing Director, Stitch AI
At The Bot Forge, we are committed to our clients’ satisfaction. Our clients make us who we are
“Our vision is for our agency to become a global champion in creating custom chatbot solutions for our customers,” said Adrian Thompson, founder of The Bot Forge.
Clutch’s sister site, The Manifest, which serves as a guide for businesses, also listed us as one of the top AI developers in the UK.
You can also see us on Visual Objects, Clutch’s portfolio-sharing sister site that features us on its list of top software developers.
Let us help your company revamp its customer experience. Visit our Clutch profile and contact us to inquire about our services.
We are often asked this by clients looking to start their first chatbot project. Like most software projects the price really depends on the scale and complexity of the project. This will govern the effort involved to build the bot and define whether it needs to be a custom chatbot or off the shelf solution.
So, let’s take a look at the key drivers impacting the price for custom chatbot development.
The first one is the channel in which the bot should function. By this, I mean where the bot will be used. It could be as a website widget implemented as a popup interface or webpage (You can learn more about webpage chatbots here) or deployed into existing messaging platforms. Facebook Messenger, Slack, Telegram, Viber, Google Assitant are just a few examples with some providing more complex UI elements which can be utilised in your bot.
There are a number of really good bot building platforms for creating UI chatbot interfaces such as Botstar, Chatfuel and Manychat; these offer some free templates and the ability to create chatbots which can be deployed to websites and Facebook Messenger. These Bot building platforms offer some good features: Visual Flow Editors, APIs & Webhook Integrations, Templates, Broadcasting etc. In our experience, we have found that even with free templates there are some costs due to setup and minor customisation. So our minimum price is around £600 with some monthly costs for hosting and chatbot management and training.
If a chatbot is required to support more complex natural language processing features and not just UI elements such as buttons then this will mean that additional effort is needed to train the bot and design and implement a more complex conversational flow. These sort of bots start at around £1500. We utilise Dialogflow Natural Language Processing to offer these types of solutions.
The complexity, scope and volume of the required conversational ability effects cost. This relates to specifics such as:
Number of branches in the conversation tree.
Quantity of questions that have to be handled by the chatbot which can often be in the 1000s.
The complexity of conversational ability ie. support for complex user enquires.
So chatbots which combine richer elements with complex conversational ability can be in the region of £1500 – £3000
The other area which will impact cost is dependent: what the chatbot will need to do carry out its role? Will the chatbot need to integrate with current systems to provide its responses? Will it need to hand over to live agents? Connect with CRM and ticketing solutions? Some chatbots may need to carry out complex interactions to provide answers to customer queries. Bots can even call systems utilising Artificial intelligence to provide relevant information based on historical chat data, for example using, https://www.tensorflow.org. With so many possibilities for bot features It’s hard to estimate the price here, but these types of chatbots cost from £4000. For each integration, we would suggest a cost of £1000-2000 it really depends on the amount of development effort required for each one.
Chatbots are capable of supporting different languages, as long as these are supported by the NLP engine it’s possible to add different language permutations fairly easily. However, each language will need its own testing so costs can be in the region of £500-1000 for each language.
Finally, depending on which channel the bot will work in there is also scope to provide other functionality such as voice capability for web chatbots or enhanced chatbot interface features. Again costs depend on the amount of complexity and effort involved in building each feature. As an example adding voice interaction to a Web chatbot would be £500.
As you can see, the cost of a chatbot project can vary dependent on the features required. However, the cost of a capable chatbot does not have to be prohibitive and it’s often a good idea to start small and add features as business needs require them.
At The Bot Forge, whatever the cost we propose for your chatbot project our aim is to create value for your business and hopefully form a long-lasting relationship.
If you are looking to streamline certain operations of your business, implementing a chatbot is a great way to go about it. After all, you can use technologies such as artificial intelligence (AI) and natural language processing (NLP) so that it can follow different types of conversations with users and provide relevant responses where necessary.
Chatbots are no longer a gimmicky tool available on the internet, as they have gained popularity and sophistication many users are incorporating them into their digital strategy. For example, a large number of businesses now use bots as part of their customer service. As these chatbots never go offline, they are always available to assist users, at any given time of day.
It is a lot cheaper for a business to implement a bot as part of its customer service than hire employees. If you employ an individual, you have to train the person and provide a salary and vacation time. One example is one of our clients https://amicable.io who replaced call centre resource with a chatbot to book client meetings.
Chatbots have a lot of advantages, which explains why businesses want to make the most of them. However, while creating these bots, it is natural to make errors, which hampers the user experience. As this might be the first or nth time you are developing a chatbot, you want to make sure it functions as expected. Here are six common mistakes to avoid along with how you can overcome them:
Assuming every user wants to talk
You tend to believe that everyone who visits your page or installs the chatbot on Slack, or other popular messaging platforms wish to start talking to it immediately. However, most of the people on the internet don’t want to communicate with the bot, unless it is necessary.
One reason why chatbots are great marketing tools is that they can engage with prospects by answering important questions. As a result, it brings down the sales friction, making it simpler for the user to invest in what you have to offer.
If your bot starts to message the individual as soon as he/she opens it, there is a high chance the person will find it annoying. A better practice would be to wait for the user to respond or you can leave instructions in the description on how to start conversing with the chatbot. Our sports events Facebook Messenger chatbot Carly utilises this kind of functionality enabling users to set push notifications for their any new sports events based on their own criteria.
Failing to track its performance
Since the chatbot makes use of the latest technological advancements in the industry, you might assume that you shouldn’t keep an eye on its performance. After all, you spent a considerable portion of your time training it, so that it can have a continuous conversation with your customers.
However, you will never know the effectiveness of your bot, if you don’t track the key performance indicators (KPI). These metrics provide a deeper insight into how you can continue to improve your chatbot. For example, you can see where most of the users tend to leave the conversation. With this data, you can think of different ways to keep them engaged so that they continue to talk to your bot. We feel that the history and training tools provided by Dialogflow enable us to track chatbot performance effectively.
Forgetting to list in directories
Once the chatbot is up and running on various messaging platforms or your website, you think you completed your job. All your visitors have to do is start talking to the bot, and it will help them in their tasks.
However, not everyone will know about the existence of your chatbot. Several messaging platforms may not have powerful search, which makes it harder to discover your bot. The best practice is to find third-party websites and lists your chatbot in it. As a result, if people look for your bot on Google or other search engines, the chances of it popping up in the first page of results goes up significantly. The best place to market your own new bot is on your website, why not write a blog post about your chatbot journey, you can guarantee other companies will be interested in your journey.
Impersonal conversations
The reason why people don’t like talking to bots is that the conversation tends to be boring and bland. As a result, they prefer to converse with human beings, as the experience is better in every way.
Think about it, would you like talking to a chatbot which sounds like it is speaking in a monotone? Rather than putting your bot in the same position, you should think of different ways to spice up the conversation. For example, you can ask the user what the chatbot should call the individual while talking to one another.
One thing is key here and we have seen this in our experience: to gain better customer satisfaction it’s better to explain to your users that your bot is a chatbot and not try and masquerade as a human. If users are aware they are talking to a chatbot from the off it will gain confidence and improve the customer experience as the user becomes more forgiving.
Not paying attention to its tone
Since the entire conversation between the chatbot and its users is going to take place via text, you need to pay close attention to its tone. Using the right type of communication will determine whether your bot performs well among its intended target audience.
While this tends to be challenging, there are several ways you can overcome this obstacle. For example, you can ask a small number of people from your target audience, what tone they would find appropriate. At the same time, you can also have a beta group, which allows you to experiment and see which one works well. Matching tone to the industry and subject matter is important to build a satisfying experience for your chatbot users.
Help and Live Agents
Since the purpose of the chatbot is to reduce the workload of your employees, you tend to assume that you don’t need a live agent. The problem with testing is that it may not take into account all the variables present in real-world scenarios. As a result, when you deploy your chatbot, it might not know how to handle a specific question.
Due to this reason, it can go on an endless loop, and the only way out of the conversation is to quit or restart the chatbot. An excellent way to overcome this problem is to allow your chatbot to ask a live agent to join the conversation during this situation. Once the employee helps out the user, he/she can provide information to the developers on how to improve the communication skills of the bot.
It’s also important to provide easy help for users to access during the bot conversation. At The Bot Forge we always implement a help feature for our chatbots so users know what they can do and how they get back on track our Facebook Messenger chatbot for the Fred Whitton Challenge is a perfect example.
Chatbots are becoming a great tool for businesses. You can use them to make life easier for your clients, by assisting them in various functions. By knowing what the common mistakes are, you can avoid them entirely and design the best bots in the industry