MEMBER IDs: Daniel Wong Yong Shen - 249 Park Ye Wong - 587 Iskandar Zulkarnaien - 514 Wilfred - 175

Inspiration

We often come across broken equipment on campus but have no clue how to report it. Emails are an outdated and unintuitive way to do so. We aimed to solve this problem.

What it does

We created a Telegram bot to allow users to conveniently report faulty equipment on campus. The bot guides the user through the report by chatting with them and automatically compiles all the received information, such as student details, location, and a brief description of the fault, along with a picture to help pinpoint the issue remotely.

All the data is automatically uploaded to Firebase for access by the relevant authorities.

How I built it

We used the node.js framework along with the telegraf, firebase-admin, fs and download packages to write the bot.

Challenges I ran into

Poor documentation of the telegraf framework made it difficult to communicate with the Telegram API. Insufficient time to write a client dashboard that summarizes all the faults reported.

Accomplishments that I'm proud of

As a team, we had no prior experience in using node.js and had only completed our Programming Methodology I class last semester. We learned a lot about the differences in writing code for applications versus that in school, and we also learned a lot about Telegram bots and how to write them.

What I learned

We learned how to use npm and nodejs to quickly download modules to rapidly speed up development. We also learned how to code in Javascript beyond what we learned in school.

What's next for NUSReportBot

Implementation of data validation for user input Client-facing dashboard to see summary of reports

Built With

Share this project:

Updates