We recently held a company-wide hackathon where we challenged each other to build compelling, useful applications using a streaming data source, Kafka, Memgraph, and a Web Application backend. This week we’re looking at a Slack bot that can help you understand how your teammates interact.
Our team spent Hackathon week building a graph application on top of streaming Slack data. If you want to jump right to the code, check out the GitHub repo, and if you want to learn more about it, join our Discord Community Chat!
We knew that we wanted to do something with Slack data because the API was friendly, bots are fun to play with, and modeling with it would be relatively straightforward.
The bot can only gather information from channels it is a part of. Whenever you add a bot to the channel, the bot will collect the last X messages (this is configurable when starting the bot) and use those messages as cold start.
Each user represents a unique node in the graph. Users post messages in the channels. They also react with emojis to messages posted by other users.