With three freshmen university students on our team, we decided to focus on a solution to a problem that personally impacted us. One thing we struggled with at the beginning of university was managing all the different websites that the university professors used, remembering to check the websites for updates and easily keeping track of upcoming assignments.

We decided to create a hack that would make our lives, and the lives of other students, much easier to manage by having all assignments in one place which could be easily accessed. We wanted to make something interactive and thought that using the Google Home Mini and its speaker capabilities would be the best option.

Thus, the idea for UNI-te was born.

What it does

UNI-te is a combination of Google Assistant and Google Firebase, where we also use Google Cloud Functions. It scrapes the various university websites, such as LEARN, for assignments and classes, and compiles them all into Firebase, storing them in Cloud Storage. It then accesses the Firebase data using DialogFlow, where it has intents that the user could want, and uses the data to respond accordingly.

We use Google Assistant on a Google Home Mini to provide an interactive voice experience. This makes it more natural to use in a residence (on campus) or any bedroom environment.

How we built it

We used the Google Assistant Action Console, DialogFlow, Firebase, Google Cloud Functions/Storage, and Javascript (JSON, Node.js, CheerioJS).

Challenges we ran into

We ran into numerous problems with making the Action respond to the different possible user inputs. We kept running into an error where the default response would always be used rather than our custom responses. We also ran into an error with the Google Home being unable to connect to our Gmail account, which we resolved with a factory reset. Finally, the programming language barrier between us and the technology we were using was fairly large because we only had experience in Java, Python and several other languages that had a different syntax than JavaScript. This meant we had to spend extra time searching up syntax in order to make our code run properly. Unfortunately, the website we got all the dates and assignments from was not very developer friendly so API's were not available and CheerioJS and web scraping was the only option.

Accomplishments that we’re proud of

We’re proud of learning basic JavaScript and experimenting with the Google Assistant and Dialogflow without any prior experience. We’re also proud of creating a working product that we all agreed we would definitely use in real life if we ever got the chance.

What we learned

We learned how Google Assistant’s Actions work and how to create intents, entities and fulfilment. It was also interesting to learn how Google services compliment each other in order to expand their capabilities.

What's next for UNI-te

We would like to create chained intents to make using the Google Assistant more like a realistic support service. If possible, we would also like to customize the voice of UNI-te to correspond with the gender of the person using it. Finally, we would like to incorporate supported third-party software such as Slack into UNI-te to expand its functionalities (e.g. team tasks with Slack).


Built With

Share this project: