Inspiration

Both of us are big fans of the NBA. However, we sometimes don't know some of the ruling and cannot follow what is happening during the game. So we decided to build a chatbot that could help beginners understand the NBA rules.

What it does

Knowledge Dunk is a Discord bot with Voiceflow at the backend. It's an intuitive bot that answers user's queries pertaining to the NBA rules.

How we built it

We built the core of the bot by using Voiceflow by setting up intent blocks and flows. In addition to that, we integrated the bot onto Discord using discord.py, Python requests and Voiceflow API.

Challenges we ran into

  • Neither of us had worked with Voiceflow before but we had fun learning about intent blocks, flows and API integration.
  • Although one of us had worked with discord.py before, none of us had used the emojis or the reaction functions, so we didn't know how to make the bot to use them.
  • We were able to get together and collaborate on the project with less than 24 hours remaining until deadline so we had to really rush to complete the project. Being in different timezones (Peru & India) also acted as a challenge.
  • While there are certainly basketball datasets available online, we couldn't find a basketball rules corpus that would help us create our bot. So we decided to create our own corpus and integrate it onto Voiceflow.
  • Parsing the message sent by the bot in the reaction method was specially hard because of the multiple states that the message could have. However, we got the clever idea of using the "repeat" chatbot command to get the information again in a dictionary instead of parsing all by hand.

Accomplishments that we're proud of

  • We finished in time through collaboration and team work. In fact, a Discord bot wasn't our original idea, but we were able to complete it as well as everything we proposed ourselves.
  • The chat bot's integration onto Discord which makes it platform-friendly and intuitive.
  • We managed to include many NBA rules in our corpus.

What we learned

  • How to use Voiceflow and it's API to create chat apps.
  • How to add reactions to a Discord bot using Python.
  • Basketball terminologies and NBA rules.
  • A lot about our teammates like what they love and what they don't.

What's next for Knowledge Dunk

  • We want to add visual depiction using images and videos to our chatbot to make it even more beginner-friendly.
  • Integrate the bot onto other platforms such as a web app or native mobile apps.

Built With

Share this project:

Updates