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
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.
Removes the specified timetable from the server.
Shows all the timetables associated with the server.
Shows all entries of the specified timetable.
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.
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