BOTfriends Preview

Conversational AI Platform

-- to BOTwiki - The Chatbot Wiki

Conversational AI Platforms, also known as Conversational Platform, Conversational Middleware, are software systems with the help of which you can chatbotsVirtual Assistants and Conversational User Interfaces for a wide variety of applications. Furthermore, they enable integration into chat interfaces such as messenger services, social media, SMS and chats on websites. A Conversational Platform usually has a developer interface (API) so that third parties can add their own customizations to the platform. [1]

The terms Conversational AI Platform and Conversational Platform are not clearly defined scientifically. Rather, they are services or platforms that use Natural Language Processing (NLP) as a basic technology and thus make various types of conversational interfaces realizable.


functional areas

In order to enable companies to develop and successfully operate chatbots and to constantly adapt them to the needs of users, a suitable Conversational Platform must cover many different functional areas. This is the processing of natural language, various integration possibilities and operation functionalities. A common architecture of the current Conversational Platforms is shown in the following figure. [1]

Conversational AI Platform

Source: Gartner - Market Guide for Conversational Platforms [1]

natural language processing

Currently, the Conversational AI Platform providers focus on the functional area NLP and thus on the interpretation and processing of natural language and the provision of a suitable answer for users. Successful providers in this area are Google with Dialogflow, Microsoft with LUIS, IBM with Watson, Amazon with Lex and Rasa with their open source solution. This form of system usually covers only a part of a Conversational Platform and is also called NLP service. Many of these services are SaaS (Software as a Service) solutions that are provided in conjunction with our own cloud solutions. [1]

Integrations and Middleware

As technology evolves, companies demand standardized and flexible integrations. On the one hand, simple and intelligent integrations in messenger interfaces such as WhatsApp, Facebook Messenger, Slack, Microsoft Teams, SMS and web chats are made possible. On the other hand, standardized integrations in enterprise software such as SAP, Salesforce, Hubspot, G Suite, Outlook, Workday, etc. are becoming increasingly important in order to optimally integrate chatbots into the business processes of companies. Currently, providers such as Kore.AI and BOTfriends to this functional area. It is assumed that the market for Conversational Platforms will be divided in the future into providers that focus predominantly on Natural Language Processing and providers that focus on simple integration options and functionalities for the operation of chatbots. [1]

Functions in the Chatbot Operations

Complementary functionalities, which make it possible to successfully operate, maintain and constantly develop chatbots in companies, are becoming more and more important. The reason for this is that the task of running chatbots is gradually being shifted away from IT departments to individual departments. This requires simple and intuitive user interfaces.

Some examples of these functionalities are:

  • Human handover tools that allow chatbots and human agents to work together to answer customer queries.
  • Simple Conversation Editor systems, which allow IT laymen to easily customize the content of chatbots.
  • Analytics Tools to measure the performance of chatbots and better tailor content to customer needs.
  • Training tools to constantly increase the knowledge base of chatbots so that they can provide appropriate answers to more requests.
  • Libraries of pre-built intents (questions and answers) and processes for a wide variety of applications and industries, enabling you to create chatbots very quickly and easily.

Scalability and Flexibility

To build a holistic, scalable and sustainable Conversational AI platform, many companies are currently developing their own Conversational Middleware platforms. These make it possible to connect various services and software systems in such a way that all necessary functional areas are sufficiently covered and the services used can be easily exchanged. With this approach, companies will be able to integrate new and better performing services into their chatbot architecture in the future. Outdated and cost-intensive services can thus be eliminated. In this way, companies always stay up to date. At the moment, technology providers are also emerging that offer Conversational Middleware platforms as a product. [1]

> Back to the BOTwiki - The Chatbot Wiki



BOTfriends Preview


--> to BOTwiki - The Chatbot Wiki

Dialogflow is a platform originally developed from API.AI, which can be used for natural dialog-oriented communication with users. Today this platform is an NLP service, which is part of the Google Cloud Platform. The platform offers its users a complete development suite with code editor, library and many tools. This makes it easier to create a Conversational Interface. [1]


Advantages of Dialogflow

Dialogflow currently offers developers 33 ready-made agents. These prebuilts can be further adapted and specified to the specific use case as required. Since these agents have a lot of Intents this saves time in chatbot development.

Each of these 33 ready-made agents and of course the agents you have created yourself can easily be connected to various channels such as Google Assistant, Amazon Alexa or Facebook Messenger via one-click integration. In addition, Dialogflow offers 15 different languages (as of June 2019).

Users can also use a feature to import and export agents, saving a lot of time.

Data from external services can also be integrated into a chat bot by means of fulfillments. Fulfillments give developers the ability to link public or private APIs or other services to the chatbot to add even more functionality.

The NLP service is not only designed for one programming language, but also offers numerous SDKs that enable the use of other programming languages. Furthermore, the graphical user interface is very clear and user-friendly compared to other providers. This allows a quick entry into Dialogflow. [2]

Limits of Dialogflow

If you want to connect an agent created on Dialogflow to WhatsApp, the service does not offer integration for it. An adaptation in your own backend system is required to ensure the connection to WhatsApp and to bring data to the required format.

When using your own backend, there are a few things you need to keep in mind:

Dialogflow, for example, expects to receive a response within 5 seconds. Otherwise, there will be a timeout. In addition, the system only stores the contexts in a user session for 10 - 20 minutes. To solve this "problem", it is not enough to just save the user ID, but any contexts related to this user ID must be cached.

The platform offers an inherent possibility to view the analytics of a chatbot in order to evaluate activities and optimization potentials of chatbots. However, the analytical evaluation is very rudimentary and is offered by other tools/services in more detail. They can, for example, track users' call histories or create specific funnels (filters). If a chat bot doesn't know any more, then many users demand to talk to a real person (human handover). Dialogflow does not offer a possibility for integration in a chatbot. Therefore, it is also necessary to adjust the backend here.

Despite the limitations of Dialogflow, the Google Service is considered Best Practice by BOTfriends and other Chatbot developers.


The fees to be paid monthly depend on the version used and the price model selected. Other factors include the number of requests, the total duration of the audio material processed, and the total duration of telephone calls. This pricing model is an advantage compared to other providers, since you do not have to pay a flat monthly/annual price, but the costs consist of the resources and requests used. [3]

> Back to the BOTwiki - The Chatbot Wiki



BOTfriends Preview

Contact Center AI (CCAI)

-- to BOTwiki - The Chatbot Wiki

Contact Center AI (CCAI) is Google's software to support and automate customer care through artificial intelligence. 1] Artificial intelligence methods are integrated into existing contact center solutions such as Cisco and Genesys integrated.

The software is currently available as alpha version to selected customers.



virtual agent

  • Automation of customer enquiries via chat and telephone using Google Dialogflow

Agent Assist

  • Support of employees during a call / chat by providing relevant documents in real time
  • Integration of the company's knowledge base

Topic Modeling

  • Analysis of customer data, chat logs and call records for automatic recognition of the topic of a chat / call.


The following Genesys and eBay example illustrates how Contact Center AI works.


reference architecture

Reference architecture for Contact Center AI


> Back to the BOTwiki - The Chatbot Wiki



BOTfriends Preview

Hybrid Human Chatbot / Hidden Agent

--> to BOTwiki - The Chatbot Wiki

A Hybrid Human Chatbot (also Hidden Agent, Hybrid Chatbot) is an approach in which the human being and the chatbot to take over a communication together.

How it works 

With the hybrid approach, man and machine can either share entire conversations or even work on a conversation together. Users can either see or not see whether they are facing a chatbot or a real person. In most cases, the requests are initially processed by a chatbot and only if the chatbot does not know what to do can a real person be asked for help or automatically switched on by the system. In order to constantly improve the chatbot, the unanswered questions and the corresponding human answers are included in the knowledge base. Thus the chatbot learns implicitly from the answers of the employees, the hidden agents.

Advantages over using a pure chatbot

  • Increased customer satisfaction, as users are more likely to receive a satisfactory response, even if the bot does not provide a response.
  • Constant and implicit expansion of the knowledge base.
  • Conversations that get out of control can be "captured" again.
  • Users who do not wish to chat with a machine under any circumstances will also be satisfied.
  • The potential of a chatbot can easily be tested.
  • The development cycles as well as the total development effort for a chatbot can be drastically shortened.


The hybrid approach is most common in customer service. But many other use cases, such as human resources, sales, IT support and e-commerce, are also well suited for this purpose. Basically, this approach is recommended if a broad spectrum of questions is expected or if a certain activity within a process cannot or should not be handled by a bot.


In an online shop, a chatbot is used to answer frequently asked questions and to provide product advice. A person is called in if the chatbot cannot answer a FAQ. In addition, the product consultation should be done by one person, if the shopping cart contains more than 500€. The chatbot constantly learns new content through human responses.

> Back to the BOTwiki - The Chatbot Wiki

BOTfriends Preview


--> to BOTwiki - The Chatbot Wiki

Prebuilts, or also prefabricated knowledge bases, are a collection of contents for certain Chatbot use cases. Chatbots live from content taught to them. In order to develop a chatbot, it is important to enrich it with content, i.e. questions and answers. The more content he has, the broader his knowledge is and the more answers he can give. Prebuilts help with development and can be used as "boosters". If, for example, you want to set up a chatbot in the IT support area, it is very helpful to be able to fall back on such ready-made knowledge bases, so that a basic stock of content is already available, depending on the use case.

How are Prebuilts structured? 

Prebuilts consist of Possible questions, entities and answers. In order to increase the speech recognition of a chatbot, it is important to deposit many different question possibilities for an intention. Furthermore, entities and answers belong to every intention. Prebuilts contain ready-made exemplary answers that the customer can adopt 1:1, but also, of course, to the company, the character and tonality of the chatbot.

How can Prebuilts be used? 

Prebuilts are usually easy to integrate. In most cases, the prebuilts are integrated via the NLP service used. There is often a one-click integration with which you can quickly and easily import required content. Another possibility to work with Prebuilts is the integration within Intent Management Platforms (IMP). These platforms are designed to make content-specific changes quickly and easily.

Which Prebuilts are already used sensibly? 

There are already many sample prebuilts available that can be integrated into a chatbot. The Smalltalk Prebuilt is certainly one of the most frequently used prebuilts. This is also very useful, because if you look at a typical communication of a user with a chatbot, some small talk questions like "How are you doing?", "How old are you? However, there are also other prebuilts, such as weather, news or restaurant bookings. Here you have to pay attention to the languages in which these prebuilts are available. Overall, prebuilts can help you get started in some areas and help you develop a chatbot.

> Back to the BOTwiki - The Chatbot Wiki

BOTfriends Preview


--> to BOTwiki - The Chatbot Wiki

Chatbots are technologies or services that are available on web sites or in Messenger Services and can answer user queries automatically with the help of artificial intelligence. The term chatbot can be broken down into two words. On the one hand it consists of the English word "Chat" (= conversation) and on the other hand of "bot" (an abbreviation of "Robot", which stands for the "Automat").

What's the difference to normal bots?

The difference between chatbots and bots is that in computer science bots are described as independently running programs that provide their services without human objection. They only have to be initiated once at the beginning. 1] In some cases, these programs are even malicious and can be traced back to botnets that use large Denial of Service (DoS) attacks coordinate. 2] In general, however, chatbots are defined as computer programs designed to simulate conversations with people over the Internet. A chatbot thus enables the conversation between a person and a machine.

artificial intelligence

This requires the use of artificial intelligence in various forms. This communication is only possible via detours using a programming language understood by the computer. The computer can process human language using Natural Language Processing (NLP) by interpreting what is said and deriving the user's intention from it. The intention is then translated into an action that is executed independently by the computer. This action can be either the answer to a question of the user or the action of an action. To realize this, a knowledge base with answers and actions must be stored behind the NLP.

Integration and the future

Chatbots can also be integrated with language assistants such as Google Home, Amazon Alexa, Siri, or Microsoft Cortana, which perform requests based on voice and are also referred to as Intelligent Personal Assistants (IPA). It is suspected that chatbots will replace both websites and apps in the future. Large technology companies such as Google, Facebook and Microsoft offer systems that help chatbots understand and interpret user input. These platforms like Google with DialogflowFacebook with, IBM with Watson or Microsoft with LUIS are made available to the masses as web services and open the doors to the use of advanced machine learning systems. [1]


> Back to the BOTwiki - The Chatbot Wiki


1] Smolinski et al. (2017): Innovations and innovation management in the financial sector, Wiesbaden: Springer.
2] Radziwill, Nicole and Benton, Morgan (2017): Evaluating Quality of Chatbots and Intelligent Conversational Agents, in: Software Quality Professional, vol. 19, no. 3.


BOTfriends Preview

Conversational Office

--> to BOTwiki - The Chatbot Wiki

A Conversational Office is a corporate communication that is based on the use of chatbots and language assistants to a large extent. This is because many communication processes take place within companies that can be automated. It already starts with employer branding, where for example chatbots can be found on the website or on Facebook Messenger The information is provided on job opportunities or exciting facts about the company.

application processes

Recruiting can also take place via bots. For example, a user can answer certain questions that allow the chatbot to post matching job postings. The application process can then also be integrated within Messenger, because functions such as uploading CVs or sending an applicant's introduction video are also possible. After successful employment, the chatbot can continue to keep in touch with the previous applicant and take over an onboarding process: "Where can I find my pay slips?", "Where can I actually apply for leave? - are answered immediately.

Office support

In addition, chatbots can become everyday assistants to employees in companies and, for example, always provide information about what's on offer in the canteen or remind them that the shuttle bus is leaving soon, order taxis, find out telephone numbers or even provide IT support. The subject areas are numerous. In summary, the use cases described form a lot of potential to automate internal communication in companies, whereby companies with the goal of becoming a Conversational Office can save resources in the long term and build up a close relationship with their employees.

Conversational Office

> Back to the BOTwiki - The Chatbot Wiki

BOTfriends Preview

Conversational Copywriting

--> to BOTwiki - The Chatbot Wiki

Conversational copywriting is one of three disciplines in the Conversational Design. In addition to web text writing, technology and psychology are decisive building blocks in holistic conversational design. Here it is important to pay attention to a balance of the 3 components, in order to avoid that the user is disappointed on his Chatbot-Journey.

The development of chatbots requires not only technical components, but also design-oriented ones. In Conversational Design, for example, psychological aspects are also considered. Questions such as "How do I motivate the user in the conversation?", "How do I calm him down with critical questions? - The type of communication is defined accordingly in Conversational Copywriting. It represents formulating the right and appropriate chatbot messages. You should especially pay attention to the Conversation maxims according to Grice orientation.

Conversation maxim for Conversational Copywriting

  1. Maxime for quality: Provide information that is truthful (Avoid obscurity of expression)
  2. Maxime for quantity: Deliver only as much information as necessary, not more (Be brief - avoid unnecessary prolixity)
  3. Maxime for relevance: Deliver only information that is useful (Be orderly)
  4. Maxime for modality: Avoid ambiguous or unclear information (Avoid ambiguity)

These maxims lay the foundation for effective communication.

In addition, the chatbot messages should be adapted to the tonality of the chatbot.

"Conversational copywriting is still about selling ... but in a way that is honest, transparent, and respectful of your audience." - Nick Usborne

> Back to the BOTwiki - The Chatbot Wiki

BOTfriends Preview

Conversational Testing

--> to BOTwiki - The Chatbot Wiki

Conversational Testing is part of the Conversational Designswhich is used when creating the Conversational Map or the conversation flows comes into play. This is where the lines of conversation of the chatbot are formulated and replayed in a real conversation. Primarily, the so-called Happy Paths to confirm the viability of the scenario. The testing could look like this:

Procedure for Conversational Testing

  1. Two interlocutors meet as testers. One represents the chatbot and one represents the user.
  2. A conversation line from the Conversational Map is defined for testing.
  3. The test person dives into the personality of the chatbot.
  4. The test subjects sit back to back.
  5. The role of the user tries to solve a certain problem with the chatbot and the partner tries to answer as the chatbot would do.
  6. The conversation is recorded and transcribed.
  7. The conversation will be revised and optimized if necessary.


The goal of Conversational Testing is to make the conversation as natural as possible with the user. At Conversational Copywriting will be used in consideration of the chatbot tonality the news, but it's hard to get a feel for whether it's a natural conversation. Conversational testing can, for example, uncover complex formulations or sentences that are too nested.

Because it applies: A person wants to write in a chat just as he communicates with his fellow human beings.

Another way to test the viability of a chatbot is to use the Wizard of Oz Method.

> Back to the BOTwiki - The Chatbot Wiki

BOTfriends Preview

Actions on Google

--> to BOTwiki - The Chatbot Wiki

The term "Actions on Google" refers to a service developed by Google with the help of which developers can link self-developed services with the Google Assistant. Once the third-party service has been tested, approved and released for publishing by Google, it can be accessed on Google Assistant compatible devices. Actions on Google is therefore equivalent to Amazon Skills, but only Google Assistant capable devices can be used.

On which devices can an action be retrieved?

On the one hand, the published actions can be played via the smart loudspeakers developed by Google. Google Home and Google Home Mini will be retrieved. On the other hand, they are also available on Google Assistant compatible smartphones or tablets. Google uses Google Assistant to serve both Android and iOS devices. For devices using the Android operating system, the Google Assistant is fully integrated and can be activated by the user at any time. For iOS users, a separate Google Assistant app must be downloaded.

How can a published action be retrieved?

So that users can call the published action, the action must be stored within the Google Actions Developers Console so-called "Invocation Phrases". These are commands with which the user informs the Assistant to open a particular action. Up to 5 example sentences can be stored for the action. As an example, a call could look like this:

  • "Ok Google, talk to BOTfriends"

How can a published action be restricted? 

The developer of a Google Action has various options for restrictions when publishing his action. On the one hand, the languages in which the action should be available can be determined during publication (as of 21.06.2019: 19 compatible languages). On the other hand, device-specific restrictions can be set up. The following questions must be answered within the Google Actions Developer Console:

  • Does your action require audio output?
  • Does your action need a screen output?
  • Does your action require media playback?
  • Does your action require a web browser?

Depending on the answers to the questions, certain devices will be approved or excluded. For example, if it is selected that a screen output is indispensable, the action is automatically excluded for the Google Home and Google Home Mini and is therefore not available to the user on these devices. Within the Google Actions Developer Console, the devices included or imposed are displayed in tabular form immediately after the question has been answered.

How can a Google Action be developed?

Google itself describes two implementation possibilities. The first and simple variant is a direct integration via Google Dialogflow. After the conception and creation of a Voice Assistant within Dialogflow, it can be published without "developer know-how" directly via the Integration tab of Dialogflow. This is a plausible variant, especially if the Natural Language Understanding (NLU) service is Dialogflow. The Google Actions SDK provides developers with a further integration option. Here Google provides client libraries for creating Google Actions. These are available for different programming languages. This variant primarily makes sense if full control over the interaction between Google Action App and user is to be ensured on the server side. Furthermore, this variant is unavoidable if the NLU service relies on another technology such as Dialogflow.


> Back to the BOTwiki - The Chatbot Wiki