Inspiration

We share a lot of interesting articles on slack. How about collecting & organizing all these into a searchable website for all who are interested? There are a lot of things that can be done along with it like summarizing the links, categorizing, fast fuzzy search, etc.

It would also be great to get feedback on how many people clicked on the links that were shared and to get suggestions on which channels would be most suitable to post this content.

What it does

Linx Ninja is a Slackbot that takes a link set to it and distributes it to all relevant slack channels automatically by parsing the content and performing keyword analysis. Based on this a machine learning model decides which channels to post into.

Users can also view past links on a webpage and search/filter these. Here it is also possible to see the number of clicks on each link.

How We built it

We built a slackbot and connected this to a flask api that converts the link (like bit.ly) and stores it in a database. The new link can then be used to track how many users (and in future who exactly) click on it.

The link is then passed to the Watson API to extract keywords which are then used for a machine learning algorithm to decide which channels to post the link into.

The link is also passed to the LinkPreview API to get a title, summary and Image which are then used for the WebUI if users want to see past links. In this webUI the user can filter by tags or people who posted the links as well as searching the link summaries.

Challenges We ran into

  • We had some issues to get slack to produce the link previews users have come to expect.
  • It was also tricky to set up the infrastructure, domains etc in such a short timeframe.
  • Finally finding a way to serve and train the model were also very difficult.

Accomplishments that I'm proud of

It is great that we have a useable tool that can be taken advantage of by anyone at KI Labs.

What's next for Linx Ninja

  • A bunch of user interface improvements
  • Better training for the classification algorithm
  • A more interactive slackbot

Built With

Share this project:

Updates