Skip to content

Jay-Plumb/hackathon-chat

Repository files navigation

RecapBot

Problem

Have you ever been in a group chat and wanted to be able to extract relevant information? Our bot, recapbot, uses a machine learning algorithm (Naive Bayes filter) to classify relevant from non relevant messages.

Description

The bot uses a webhook which is connected to a local server through an ngrok tunnel. When a user calls '@recapbot' within a specific room, the webhook notifies the server and this causes messages within the room to be passed to the server. A learning algorithm then classifies the messages and adds a specific markdown to each message (the larger the font, the more relevant the information). Finally, the bot outputs the messages back into the room where it was called.

Built With

This bot uses the following technologies:

Deployment

To run the setup, please do the following:

  1. Clone files and download relevant packages
  2. In terminal, call ngrok http <portNumber>
    [The port number must be the same port as the one in the Python script (recapbot.py)]
  3. Generate the webhook using Spark for Developers website
  • In 'Request Headers', change Authorization to Bearer Token of the bot
  • Enter applicable 'Request Parameters' and Run
    [For the 'targetURL' field, enter the Forwarding URL generated by ngrok]
  1. In another terminal, run recapbot.py
    python recapbot.py
  2. In a Cisco Spark room, add recapbot through "Add people" (e-mail: recapbot@gmail.com) and message recapbot using:
    @recapbot
  • The bot currently has the following functionalities: '/help' and '/max'
    (if '/max' called, please add an integer with a space after to specify the max number of messages filtered)
  • Calling the bot without any other parameters, filters all messages in the room

Future Implementations

In the future, the following functionalities will be added to the bot:

  • Get the summary of messages within a specific time period
  • Output the messages in a specific file format or in another room

Motivation

This bot was created for the TechCrunch Disrupt London 2016 Hackathon (3rd-4th December 2016). It uses the Cisco Spark API and is used in Cisco Spark rooms.

Winner of the Cisco Spark API prize.

Authors

Team Recap:

  • Adrian C.
  • Aydan G.
  • Jason P.
  • Nicholas K.
  • Thomas G.

Acknowledgements

Many thanks to the entire Cisco TechCrunch Spark team (Steve S., Casey B., Ryan W., Jonathan F.) for the support during the entire hackathon and for making the bot possible.

We would also like to thank TechCrunch for organising the hackathon.

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages