Inspiration

The COVID-19 pandemic has changed many aspects of our lives, including our daily interactions. With no one to talk to, we decided to create an assistant that would keep us company and on track during these monotonous times.

What it does

Chester can perform any one of its functions through voice commands. His functions include: telling the current time, telling the current weather, playing a video, playing music, doing mathematical calculations, searching things up on Wikipedia, telling jokes, listing events on your google calendar, telling COVID-19 statistics, and providing verbal therapy.

How we built it

Chester was built on python and uses numerous python libraries to perform voice-activated functions. The speech_recognition library uses Google Cloud's speech recognition API to turn audio inputs into string data. When Chester is activated, it will listen to audio coming from your computer's microphone and turn it into a string. Chester will then see if that string matches with any of the programmed voice commands, and if it does, Chester will read the text associated with the function out loud using the pyttsx3 library. Data like weather and time are received through libraries that send API requests and functions like the calculator are performed natively. We also utilized the request functions to scrape the website and find functions to look for the specific data we needed.

Challenges we ran into

A challenge that we ran into was trying to web scrape off of certain secured websites. When we were starting, we did not understand the ethics of web scraping and attempted to get data from sites like the Weather Network. These websites had security measures that prevented us from getting the information we needed and resulted in ambiguous errors in our code. After figuring this out, we decided to implement APIs to get the data we needed. Another challenge we ran into was poor time management. We attended many workshops which limited the time we had to build our project and struggled to delegate tasks properly. This resulted in a time crunch near the end of the hackathon and limited the scope of our project.

What we learned

Throughout this build, we learned a lot about how to implement web scraping by using Beautiful Soup. Before AngelHacks, we had never done any type of web scraping project so getting started was daunting. After watching a few videos, importing some libraries, and creating test programs, we managed to successfully scrape websites to get data on youtube videos, COVID-19 statistics, etc. We also learned how to implement APIs for the data that we could not web scrape. We used APIs for voice recognition and to receive data from Google Calendar events, Wikipedia, etc.

What's next for Chester

In the future, we would like to create a dedicated piece of hardware to run Chester on. We could run the program on a Raspberry Pi, connect high-quality speakers, a microphone, a small display, and enclose the components in a 3D printed case to make Chester just like a real voice assistant. This would allow Chester to run even when your main computer is off. In addition to adding a hardware component, we would also like to add more functions. Adding functions like internet monitoring, reading stock prices, reading new emails, telling a random quote, and reading trivia facts are all avenues that we want to explore in the future.

Built With

Share this project:

Updates