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!
There are several IBM Watson APIs available on the IBM Cloud. One of them is IBM Watson Assistant. Watson Assistant enables you to build apps that include natural language processing and structured conversation. The service provides an API which you can call from an app or website to hook into your chatbot.
Watson Assistant API can:
– Extract meaning from natural language
– Discover patterns in data sets
– Understand the „tone“ of language
– Translate languages
– Convert text to speech and speech to text
– Perform text classification
– Build a virtual agent (chatbot)
Watson is more of an assistant. It knows when to seek the answer from the knowledge base, when to ask for clarity and when to lead yourself to the human. Watson Assistant can work in any cloud-allowing businesses to bring AI to their data and apps wherever they are.
IBM Watson Assistant is marketed as a solution for companies of any size who want to build their voice or touch-enabled virtual assistant.
To create chatbot using IBM Watson API is mandatory to have a IBM/Bluemix account to start and its free (Lite Version.) Chatbot is built using intents, entities and Watson Developer Cloud to interact with the chatbot.
When we compare IBM Watson with Dialogflow, there is a question, what is better?
If you need a competent Artificial Intelligence Software product for your company you must make time to examine a wide range of alternatives. Aside from the robust features, the software which is simple and intuitive is always the better product.
In 2019, according some market research, the user satisfaction level for IBM Watson is at 99% while for Dialogflow is at 96%. Both bot frameworks have its pros and cons. Dialogflow and Watson Assistant provide a UI tool to design conversation flow logic for complex dialogues.
Dialogflow provides maybe easier and quicker way to create a custom conversational AI bot, while IBM Watson offering are targeting more corporations and enterprise organizations. For those who start to learn how to build chatbot, maybe is better to choose and begin with Dialogflow.
Watson conversation is expensive comparing to Dialogflow, while development interface in Dialogflow could have been better. Dialogflow bot for website integration does not support buttons and links while Watson Assistant for web integrations supports buttons and links usage.
Watson Assistant and Dialogflow integrate with variety of other popular platforms and systems.
Watson is not a single thing. Watson is a collection of APIs that can be used to solve various challenges and Watson Assistant is part of it. Many senior developers think that today there’s nothing on market like Watson Assistant.
With the proper expectations and in the proper hands, Watson’s APIs can be used to do some really phenomenal stuff.
More about Watson Assistant you can read at official IBM website: https://www.ibm.com/cloud/watson-assistant/
***UPDATE***
Dialogflow have extended the V1 API shutdown deadline to March 31st, 2020. https://cloud.google.com/dialogflow/docs/release-notes#November_14_2019
Winter is coming! (for any Game of Thrones fans this will make perfect sense!) In October last year, we wrote about the news that Google will be dropping support for V1 of the Dialogflow REST API in Oct 2019. We’ve been building all our chatbots with V2 since last year, however, there are many companies who still have V1 Dialogflow agents which will need to be transferred. This blog post aims to help you with carrying out your migration successfully.
The amount of work needed will really depend on what features your Dialogflow agent is using and where it’s integrated: If you are using Dialogflow’s fulfillment webhook, inline editor, or any Dialogflow API, you’ll need to update your code, endpoints, and/or fulfillment to be compatible with V2. However If you are certain your existing agent doesn’t use the fulfillment webhook library, the Dialogflow API, or any integrations, then you will not need to make any major changes before selecting V2.
Due to authentication changes, the biggest impact will be for Dialogflow web agent implementations which are currently calling the REST API.
This post will be split this 2 sections: a basic migration guide for agents not using the REST API and a more advanced version covering what changes are needed to use the new REST API and what changes need to be made to support authentication.
You can see more details about upgrading from V1 to V2 in the official guide here.
Anyone who already has built out their website chatbots using v1 API, then they should start planning for the migration sooner rather than later. Any new features should be added after the upgrade. The migration is potentially a non-trivial task, considering some chatbots have some fairly complex code driving their fulfilment. If you have a live bot in production our advice is to set up an upgrade chatbot as a copy of your existing bot project and then work through the upgrade there. You can guarantee that changing to V2 will mean that fulfilment and API calls may stop working. Once the upgrade is complete re-testing all bot functionality is strongly advised before setting live.
We would recommend everyone who is creating custom website chatbots to do so using the v2 API. All our new chatbots are built using the v2API.
If you need assistance or advice with your own chatbot v2 upgrade please get in touch, we are Dialogflow experts and would be happy to help!
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.
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.