We were inspired to create Omnis as a culmination of our experiences with complicated or in depth websites. We recognized that sometimes, when navigating a site, it was difficult to navigate to the exact webpages we wanted to see. To remedy that problem, we created Omnis, a chatbot that recognizes a user's input to help them navigate to the UTD website necessary. The name "Omnis" comes from Latin, meaning "all." We wanted this chatbot to represent a way to access all of one's needs.

What it does

Omnis takes user queries and answers them through webscraping. It is hosted on a website, intended to be a companion product for users to access if needed.

How we built it

When building Omnis, our team used Python, Javascript, HTML, and CSS. We collaborated through a text editor called Atom, where we could access one another's programs with the correct teletype package URL. We began by building the chatbot's search function, and then proceeded to create the server to host the chatbot on. While one member worked on the chatbot itself's function, another member worked on the actual website to host it on, as opposed to the placeholder it was using at the time. After the completion of the aforementioned tasks, we created a repository on GitHub to contain all of our code. Lastly, we worked on integrating the chatbot onto the new website, and then worked on the design aspects of our website.

Challenges we ran into

Throughout the development of Omnis, we came across multiple "bumps" in the road. One of the challenges we ran into was incorporating a database of a user input/chatbot response, based off of the UT Dallas website site index. We also had some difficulty with hosting a server through Python, but we were able to get it up and running after doing some research and debugging. When integrating the chatbot with the website, there were some hosting issues as well, but after we worked together, we were able to come up with a solution.

Accomplishments that we're proud of

After working with a multitude of languages, each member of the Omnis team has come out of working on this project with new knowledge of different language syntax and functionality. The debugging process was long and sometimes tedious. However, the final version of Omnis is better as a result of our teamwork throughout debugging and testing. We were also able to compile over 900 specific UTD websites for the chatbot to use in its search for information, alongside the Google search function. Although the members of the Omnis team are all UTD students, none of us had met prior to attending WEHack. Nonetheless, we were able to work together with cooperation and trust in each others' abilities.

What we learned

As we mentioned previously, working on Omnis has exposed each of us to new programming languages and libraries. Each member of the team also learned how to work with web scraping and crawling to obtain data. We were able to observe our own and each others' weaknesses and strengths, which allowed us to create Omnis by playing to our strengths and without letting our weaknesses hinder us.

What's next for Omnis

The next step for Omnis is incorporating a Natural Language Processing model that can learn from training data that consists of formulaic user input-chatbot response pairs. The chatbot would then be able to give more intelligent responses to unfamiliar queries. The Omnis team hopes to adapt and innovate the Omnis chatbot as time goes on, so that it can better serve its users.

Share this project: