Keynote | Technical | talkReduce()
Friday 17th | 14:40 - 14:50 | Theatre 20
Chatbots have become extremely popular thanks to new machine learning technology which allows companies to develop smarter and more useful chatbots. Many companies including Apple, Microsoft, Amazon have developed their own chatbots to make our life easier. BI Geek proposes to use chatbots in a business scope. A chatbot will allow a team to do tasks faster while saving time. The use of the natural language service by IBM Watson and APIs, which many companies provide, will allow us to build an interactive chatbot that can streamline our daily tasks.
Keywords defining the session:
In our organization, we leverage Slack as the primary communication tool between team members. Slack is very convenient for sharing files, having calls and group discussions. Slack even provides a chatbot tool to develop a customized chatbot. This tool doesn’t support natural language so the conversation with the chatbot is not fluent and other services are necessary to improve its capabilities. Watson is an IBM service capable of answering questions posed in natural languages. Watson provides an API that allows us to use its services in an effortless way. Watson has multiple services such as: conversation, translation and natural language understanding. In this paper, we will talk about the conversation service which is used to answer questions in a natural language. In this proposal, we want to show how important a chatbot tool can be to a team. We are used to using many different applications in a normal day. We usually use the email service to receive and send mails between our team and customers, the calendar to schedule meetings, and other applications for many various tasks such as requesting vacations, tracking project times etc. Utilizing Slack’s ability to customize chatbots, we can develop a chatbot with the goal of centralizing the different tasks in a single system. Using Watson Conversation service allows us to use natural language conversations improving the efficiency of the conversations. Watson is the centerpiece of our system, it is able to understand customer requests and classify them among the possible actions to be performed. Watson’s conversation is trained using some example conversations for specific actions. For example, if someone wants to look at another’s calendar he can write: “How is Smith’s calendar today?”, “Tell me about Smith’s calendar”, etc. Using some examples, Watson will be able to understand other kinds of questions thanks to its machine learning system. Furthermore, Watson is able to understand some words like time and location. In the previous example, Watson can understand that the request is for “today” in the calendar and not another date. It is also possible to define words and synonyms. Watson is able to understand some cities, and streets as locations, but to schedule a meeting we can define words such as: office, lunch counter, 2nd floor, etc to determine what action is displayed. Two potential actions are Calendar Management and Time Tracking. Calendar Management: Google Calendar API allows us to interact with our team’s calendar. The following actions were defined to implement in the chatbot: -Looking at our personal and other members’ calendars -Find free time for a meeting between member calendars -Schedule a meeting given: Start and end time, location, titles and members to send the invitation. All these actions are defined in Watson, including location and time extraction. Watson understands user input and gives us back the action to execute with some other information (such as word extractions: location, times, etc.). Based on these details we can contact the calendar API and execute the corresponding actions. Time tracking: Harvest is one application used for tracking team times. Harvest provides an API service which allows us to interact with the application. Our team must add every day how long time they spent in each project. Members of the team just need to write to the chatbot in which project they were working and for how long and Watson is able to identify the projects and number of hours. Once the chatbot has these values, it is possible to connect with the Harvest API and submit the new time entry. Thanks to this development, our team is able to perform daily tasks faster and keep a record in the conversation chatbot of everything done. The idea is to keep centralizing more services in a chatbot to continue improving the efficiency of the members of the team.