Skip to content

FrancisRalph/NYPClassBot

Repository files navigation

NYPClassBot


A Discord bot made with Python that converts a picture of a timetable into data using upscaling and Optical Character Recognition (OCR) AI technology and stores it in the cloud to remind the discord server whenever a lesson starts.


This project is a submission for the Mini Project activity hosted by NYP Developer Student Club lasting 7 weeks from 26th October 2020 to 18th December 2020.

Group members: Derrick Png, Ethan Ng, Francis Ralph

Features

!timetable add [name]

Registers a timetable for the server, maximum of 3.
The bot will prompt the user to upload an image of a timetable from NYP's website.




!timetable remove [name]

Removes the specified timetable from the server.


!timetable list

Shows all the timetables associated with the server.


!timetable view [name]

Shows all entries of the specified timetable.


!timetable link [name] [day] [entry number/name]

Allows you to add links (e.g. zoom) to entries in a timetable.
Entry input can be an entry's number as seen from !timetable view or a search term that matches a subject name.



Contributions

Francis Ralph - @FrancisRalph:

  • User interaction with exception handling
  • Regex magic
    • To process user input appropriately due to how the database is structured
  • Addition of links to reminders
    • Database modification
    • Algorithm to process consecutive lessons as a merged entry
  • Heroku bot hosting set up
  • Implementation of !timetable add, link
  • Other cool stuff

Ethan Ng - @ethan-rui:

  • Upscaler AI for upscaling before image-to-text conversion
  • Raw text data cleaning and processing
    • Clean invalid data
    • Process timetable entry data into day, subject and time
  • Database management
    • Construction of data structure
    • Creation of database module for ease of use
  • Implementation of !timetable list, remove, view
  • Other cool stuff

Derrick Png - @Derrick-Png:

  • OCR AI for image-to-text conversion
  • Implementation of reminders
    • Algorithm to remind server whenever a lesson starts
  • Other cool stuff

* Contributions are not limited to the above list, we worked together as a team! :D

About

No description, website, or topics provided.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published