The many times I forgot to book a room for my group meeting and spent hours searching for an open room on campus by walking through each building.
What it does
It parses through 25live to gather scheduling information for WPI events and classes. It then uses the users geolocation to calculate the closest open classroom that the user can use.
How we built it
Unorganizr is built on a flask server running on an Azure cloud instance. It uses requests to pull data from 25live and then parses it to gather scheduling information for rooms across campus and stores it in MongoDB. When a user connects to the Unorganizr web application, the app requests the user's location and uses it to determine the closest open classroom to the user. It then displays the location of open and taken classrooms on Bing maps using openlayers to overlay location markers.
Challenges we ran into
Some of the challenges we ran into were gathering location data for rooms across WPI campus. In addition, we had to deal with inconsistencies between 25live and the actual WPI campus. Another challenge was parsing data from 25live. Different xml namespaces made it tricky to pull down the data and easily parse it into a readable form. The final and possibly biggest challenge was overlaying. A lot of the locations had to be offset and correctly rotated, so that they would overlay nicely on the map.
Accomplishments that we're proud of
Getting data from 25live.
What we learned
We learned a lot during this project. We learned how to use flask, requests, xml namespaces, mongodb, openlayers.
What's next for Unorganizr
Being able to calculate floors into distance calculation. Adding more rooms on WPI campus. Adding group integration to find the closest room to all members.