The UKAD slack bot is built on the Microsoft Bot Framework. This framework is suitable for various platforms and doesn’t require a separate implementation for each. The Microsoft Bot Framework connects all approaches, allowing developers to implement a single bot on Facebook, Skype, Slack, and other messenger platforms. In addition to channels that are supported by the Microsoft Bot Framework, we can implement our own by creating support for any channel within the Microsoft Bot Framework or by connecting the bot with the site.
The UKAD Slack bot implements the Slack API. It helps UKAD employees to track their work hours and reminds them to enter data into the time tracker if they haven’t done so by the evening. Recently, we also added vacation schedule alerts so team leads can plan projects around the schedules of employees.
We created the UKAD bot to simplify the lives of our employees, allowing them to get the information they need with a couple of clicks. In future, we want to add more features related to project management, for example, the ability to inform about project deployment and uptime. Usually, project status notifications are automatically sent by email, but real-time bot notifications in Slack are much more reliable and convenient.
How does it work?
The bot has two modes.
- User-initiated dialogue
The bot determines the intent based on what a user types.
For example, a weather-related question should be recognized as a weather intent and “today” should be recognized as the current calendar day.
The bot understands what a user wants, runs the appropriate dialogue, and validates data. For example, if we want to clarify a user request such as for which city the user wants a weather forecast or give the user the opportunity to answer a list of questions (the dialogue can be a form-fill or quiz).
- Bot-initiated dialogue
Our alert system works as follows: our service sends the bot API a message and recipient and the bot sends this message to the recipient. Depending on the request settings, the message can be a single message or the start of a dialogue.