Working with a bot. Current State of Chatbot Engines and its integration in Enterprise Social Networks
The public perception of bots, simply defined as software applications, designed for automatisation of digital processes or tasks, has recently been dominated by social bots. Social bots as networking bots have been utilized increasingly in the course of elections worldwide. They are used to imitate human behavior within social networks and influence moods or opinion-forming processes, which made them highly controversial in public opinion. For, example, in one of their articles, dealing with the issue of social bots the NYP spoke of fake accounts, manipulation, and fraud ( https://www.nytimes.com/interactive/2018/01/27/technology/social-media-bots.html). There are however other forms of networking bots that can be useful in the context of social media. Chatbots, for instance, are primarily used in customer communication. With the help of artificial intelligence, they help to pass on information to customers as efficiently and user-friendly as possible and thus speed up communication processes. In the context of our research project SB:Digital, we focused on chatbots and their potential within enterprise social networks (ESN).
Collaborative software is generally used to improve the exchange of data and knowledge within communities or collaborative networks (CN). In companies or project teams with a strong spatial distribution especially, they are able to reduce email traffic significantly. The main aim of ESN like Yammer, Humhub or Facebook Workplace is to provide a platform for (informal) communication and thus, support team building and increase the motivation of employees. Users can create their own profiles and communicate in chats, spread likes and comments, or use functionalities such as sharing or linking. Beyond their function as a chat box, we believe that ESN has the potential to support the empowerment of employees by enabling them to participate through functionalities such as crowdsourcing, surveys, assessments etc. pp. Additionally, by providing technical support for organisational and coordinating processes, ESN can help to increase the motivation of employees.
“What can I do for you?” Chatbots in ESN
The potential of bots, concretely chatbots, for knowledge exchange and collaboration within CNs is not adequately addressed, up to now. So far, chatbots are commonly trained to respond to customer requests. Chatbots imitate interlocutors and conduct conversations in the patterns they have learned. But in our opinion, chatbots can do more. Therefore, we developed two use cases to investigate to what extent chatbots can improve interaction within ESN. On the one hand, the process of making an appointment between several employees including room booking (1) should be mapped and on the other hand, the search for employees with specific competencies within the company network (2) should be supported. The potential for time-saving in the (often) annoying process of making an appointment between more than two meeting participants is illustrated in the following figure (appointment use case).
The use cases are developed as exemplary showcases for the benefits of chatbots within ESNs. In the implementation of our showcases, we assumed the following preconditions: Company X pursues an (internal) social media strategy to improve communication. In this context, an ESN was implemented. Employees use profiles that include individual business-related information such as skills, display their working progress and note their in-house and external appointments in both public and private calendars. Exemplarily, we have chosen the social network Humhub, as it is a well-known open-source, modular ESN solution.
“Hello, are you there?” Searching for a chatbot
To identify an appropriate chatbot, that is suitable for the integration into ESN, current chatbot solutions were evaluated and compared to each other. The online search revealed a large number of software solutions but only chatbots with a working website and activity within the last two years were taken into account. Overall 21 chatbot solutions have been evaluated. Table 1 shows the classification of chatbots regarding their architecture (on-premise / SaaS), interconnection possibilities (plugin model) and license model. Eleven of these solutions have been voted out in the first run. Only ten solutions were open source, on-premise, and extendible chatbots.
Table 1. Comparison of Chatbot Engine
In the second round and based on the presented requirements and conditions, Rasa Core was chosen as a suitable chatbot engine as it fits best to all conditions. It is an open source, highly developed and well-documented software. To pursue the defined goal and show the benefits of an integration of a chatbot within an ESN and according to the connection of different data sources, the two use cases were implemented by using Rasa Core. Furthermore, a middleware ( https://github.com/DServSys/rasahub) had to be implemented to ensure the communication between Humhub and the chatbot.
Rasa Core needs multiple training data for input classification, meaning a minimum of ten sentence samples for each intent is needed. Also, dialogue modeling is required, which means that each possible route should be defined. The implemented chatbot communicates with the user through Humhub Mail. In the first, calendar-related, use-case it is possible to ask for an appointment on a specific date or time frame, and the desired duration of the appointment. An NER tool, to extract the necessary time information, is Duckling ( https://duckling.wit.ai/). Optional properties are additional participants and a meeting room that shall be booked. After collecting all information, the calendars of the persons in the conversation (and possible additional participants) and the room are accessed and matched together to find a suitable time frame for an appointment, which suits all participants. The first feasible time frame found, will be communicated to the conversation. If it is accepted by a participant, the chatbot is booking the appointments to all participants’ calendars. If the time frame is declined, another suitable appointment proposal will be made.
Use case two deals with the problem of finding the right contact partner when dealing with a problem. In this case the chatbot acts similar to the interaction with customers. It extracts requirements using NLP and provides the desired answers by accessing available information.
By using chatbots in commercial spaces, like setting up a joint appointment or searching for persons with specific competencies, organizational processes and the knowledge management can be better assisted. Other possible use cases could involve Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), company Wiki, Document Management System (DMS) or other internal or external software systems. The key requirement we saw is an existing ESN or messaging service and an appropriate social media and internal communication strategy among all CN stakeholders. Also, necessary company data has to be accessible by the chatbot with keeping user access rights and policies (privacy).
In the future, using better machine learning algorithms, more company data, better interpreters and dialogue models, the user experience will improve more and more.
You will find further information about the use cases and its scientific basis:
The German Federal Ministry of Education and Research have funded the work which underlies this publication under grant number 02L15A070. The authors thank for the funding.
Förderhinweis: Dieses Publikation wird/ wurde im Rahmen des Programms „Zukunft der Arbeit” [FKZ 02L15A070, Laufzeit: 01.04.2017 bis 31.03.2020] vom Bundesministerium für Bildung und Forschung (BMBF) und dem Europäischen Sozialfonds (ESF) gefördert und vom Projektträger Karlsruhe (PTKA) betreut. Die Verantwortung für den Inhalt dieser Veröffentlichung liegt beim Autor.