Version 2 (modified by hales, 4 years ago) (diff)


OfficeBot: joint work of NLPC MU and Konica Minolta

student R. Sabol

a Slack bot that supports teamwork

Project web:
Project repository: /nlp/projekty/officebot/trac-git


  • detect channel activity
    • active/non-active (displayed as bold/normal typeface)
    • type of activity (conversation = several mutually related posts, individual posts)
    • language of the activity (Czech/English?, short messages/long posts ...)
    • sentiment of the activity (possible flamewar, emoji-based classification?)
  • summarize activity for a particular channel
    • from a particular moment track all messages
    • cluster conversations (based on time span and/or topic)
    • detect keywords
    • highlight most important messages or part of messages
  • summarize activity for all channels
  • suggest joining a conversation based on user preferences (favorite topics, languages, sentiment ...)
  • suggest moving part of a conversation into external applications
    • transfer to calendar, trello, private channel (talk to myself)



  • English (needed to filter out non-English texts)
  • probably needed tools for "internet language" (e.g. abbreviation expansion, emojis)


Time period Student Activity KM Activity

study the data

study Slack functionalities

bring ideas about what can be done

resolve legal issues concerning KM conversations data


create the basic chatbot:

  • listen on different channels
  • detect channel activity
  • quantify channel activity

run the chatbot on KMLE Slack

start collecting feedback


study NLP techniques/implementations that can support smart features for the chatbot

extend the chatbot with language detection

propose a evaluation for the new feature

cluster conversations based on time span


extend the chatbot with keyword detection using TF-IDF or another "simple" technique

study the specifics of the Slack conversations

cluster conversations based on keywords


study techniques for text summarization

extend the chatbot with summarization

provide feedback for keyword detection


extend the chatbot with sentiment analysis based on words/emojis

suggest joining a conversation based on keywords/topics/participants/sentiment...

provide feedback for text summarization


extend the chatbot with connectors to applications such as Trello, calendar etc.

provide feedback for sentiment analysis


evaluate and deliver the application

Attachments (1)

Download all attachments as: .zip