Inspiration and Problem Statement

Though we love getting involved in the University of Calgary club community, we found it difficult to keep up with all the clubs and events we were interested in. Most major clubs use Discord to communicate between executives and participants. However, managing the events for participants becomes difficult as they are often hidden away between a landslide of other Discord messages. Currently, there is no centralized platform where up-to-date information on club events could be found.

What Our Solution Does

CluBot scrapes announcements and scheduled events from Discord servers and DM's relevant information to opted-in users. It connects important information to each DM, including the specific server of the message. Further, it can also generate iCal .ics files which can be imported into a calendar app of choice, allowing a user to never miss an important or interesting club event.

How We Built It

CluBot was built using python. Our team worked efficiently in dividing tasks and making effective use of the VCS features offered by GitHub. The use of the discord.py libraries was a captivating process for our team, as it was a new library for our whole team and required that we understand async commands in Python. Additionally, the use of icalendar.py was an interesting process that required many iterations before successful outputs were produced.

Challenges We Ran Into

-sending .ics files through discord

-working with new libraries

-far too many bugs

Accomplishments That We Are Proud Of

-figured out how to send our files through discord

-built a fully functioning channel scraping feature

-interactive commands with our bot through simple prefixes

-channel detection systems

What We Learned

-How to use libraries to integrate functionality from other apps

-How to work as a team on a programming project (version control)

-Understanding of concurrent programming

What's Next for CluBot

Building a calendar webpage populated with all events from all servers in a Discord hub, such as the hub for the University of Calgary, would allow for one truly centralized place for everyone to view what club events are going on around campus.

Built With

Share this project:

Updates