Skip to content

A python application for summarizing Slack threads

Notifications You must be signed in to change notification settings

Automattic/Slack-Summary

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Slack Summary

Summarize it is a chat summarizer plugin for instant messaging applications. It summarizes the large content of chat logs which enables users to quickly understand the current context of the conversation. Currently Summarize it works on top of Slack as its plugin.

The original relied on an HP cloud concepts expraction api. We've pulled that out to remove any reliance on 3rd party apis, and are going to improve the summarizations.

Installing Summarize It plugin for your slack

To install the summary package

Firsts, create a token for your team https://api.slack.com/web

   pip install flask requests slacker wsgiref jupyter mock pbr spacy numpy

Then run

 python -m spacy.en.download all

Edit the config.py file that it includes the line

 keys = {
 	     "slack": "your-token-here"
	     }

Then edit ts_config.py file to adjust the debugging options

 SUMMARY_INTERVALS = [{'minutes': 10, 'size': 1}, {'hours':12, 'size': 2}]
 TS_DEBUG = True
 TS_LOG = "./ts_summ.log"
 DEBUG=True
 LOG_FILE="./summary.log"

Here the LOG_FILE stores where notices of users accessing the server is stored and the value of DEBUG determines if detailed logging is stored.

The plugin is executed by running

python main.py

Tests are currently setup to run in a python virtualenv. These will executed by runnning

make check

but realize that the test will install and run in a virtualenv

To complete the installation

  1. Visit https://<your-team-name>.slack.com/services/new/slash-commands

  2. Enter the command name you wish to use

  3. Enter the request url as <your-deployed-app-url>/slack

Using Summarize It plugin with slack

Let's assume that that plugin is named summary. The plugin supports a small command line syntax with allows specification of the previous window of time to look back. Currently this can be specified in minutes, days, or weeks. Keyword search is coming soon.

So to get the key messages from the last 5 days:

/summary 5 days

Or to get a summary of the important messages over the last two weeks

/summary 2 weeks

Screenshots

Hackathon Discussion

Hackathon Discussion

Meeting Discussion

Meeting Discussion

Authors and Contributors

Yask Srivastava (Developer), Ketan Bhatt (Developer), Pranu Sarna (Developer) and Vinayak Mehta (Data Scientist).

Support or Contact

Having trouble with summarize it? Create an issue in the repository GitHub Repo.

About

A python application for summarizing Slack threads

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 97.4%
  • Makefile 2.6%