Trackify is inspired by an incident that occurred in Miraal’s house the morning before the hackathon started. Miraal’s older sister had just realized that Linkedin had been charging her for Linkedin Premium for four months without her realizing, and that she had lost over 100 dollars. As she cried in despair, her little sister panicked at her own realization that she had just missed the deadline to cancel her Apple Music trial by a day. In the other room ,their mother was on call trying to cancel an order she had made for a freezer. Extra expenses were the last thing Miraal’s family needed in these difficult quarantined times. Miraal sat there and tried to think of a solution that would solve all the problems her family members were facing, and would allow them to be happy at home. One morning later, after the hackathon group call, the idea of Trackify was born.
With everyone locked up at home due to coronavirus, online subscriptions such as Netflix and Apple Music are being bought more and more, yet people are forgetting to cancel them either before their free trial ends or after quarantine ends and they no longer need it. Trackify ensures that no one makes a payment by accident and that no one carries the stress of tracking their own subscriptions, so they can be happy at home.
What it does
Trackify is a website which manages all kinds of online purchases in one place. From the moment an online purchase is made, you can manage it on Trackify. It allows you to track your orders, cancel subscriptions, and manage purchases. Trackify enables phone, text and email returns with no hassle. One of its most useful features is call waiting - where it will wait (listening to all that hold music on your behalf) for a human to answer the phone before connecting you to them. Furthermore, it tracks your online subscriptions and helps you make sure that no payment is made unintentionally. If a subscription is to be cancelled before the free trial ends, Trackify can handle this for you.
Essentially, Trackify ensures that no one has to experience any stress when purchasing products online, something that we feel is essential, especially as people purchase more things than ever online in a quarantined world.
How we built it
There are four main features incorporated into Trackify.
Firstly, the automatic call waiting system. This was built using the Twilio API. The speech recognition API provided by Twilio was used to identify common keywords in both human and machine speech to tell the difference between them. Then, the API was used to create a conference call when a human was identified so that a user can be added to the call after the bot was done navigating and waiting!
Secondly, the email cancellations. This was built using the Gmail API that allowed us to send emails to a company on a user's behalf at the push of a button.
Third, the order tracking page. For the purpose of this hackathon we set up tracking codes for one carrier (Canada Post) and worked with that. We were able to retrieve tracking numbers from a user's email by using the gmail API to read the emails sent from a particular company. Then we used various NPM packages to extract the tracking number from the body of the email. After this, we were simply able to send the tracking number off to an API that was able to give us the status of the package.
Finally, the search feature. This was built using MongoDB which had we had populated using fake company information (for the purpose of this hackathon).
Challenges we ran into
Due to time constraints it was hard to employ complete NLP into our project. As a result, our bot only serves as a proof of concept rather than a complete tool that can be used to navigate just any IVR. A lot of the features we programmed had a lot of hard-coding that would, unfortunately, not work for an unknown IVR. The good news, however, is that there a few very easy fixes to increase the probability of navigating any IVR. By implementing a NLP API, we believe that we would be able to understand context and perform actions such as key-presses more dynamically rather than fixing them before hand for each company that our bot would deal with.
Accomplishments that we're proud of
For many of us, this was our first hackathon; A totally new experience with new knowledge coming at you in every direction. And yet we persevered in this environment and developed a proficient solution to a real problem during quarantine that will surely make everybody happy at home. We are proud of what we built; This includes our implementation of the Twilio, Gmail, and NLP API's thatwe used to develop our application, and the design process , where we collaborated to develop designs through Figma. We are also incredibly proud of our communication and collaboration through this virtual environment, where we were able to educate, teach, learn, and motivate each other to create our amazing project, Trackify.
What we learned
We learned how to better understand documentation and work with APIs. Incorporating the automatic call waiting system was really challenging, however by learning how to break down each step of the process, we were able to achieve what we were looking for. Working with the Twilio API to recognize speech, and initiate a conference call definitely gave us a more in depth understanding of the potential uses of this API.
In addition, we also learned a lot about creating efficient algorithms. This learning happened when were were sending ourselves hundreds of order emails and trying to process them with for loops! Fortunately we saw some opportunities for improvements and made them!
Apart from technical skills, we learned a lot about teamwork and collaborations, especially in the environment that we worked in for this hackathon. Not having your teammates near you to wake you up when you start drooling on your keyboard was especially challenging. We learned how to efficiently use some good online tools to work together, especially in the development world.
What's next for Trackify
Currently, Trackify is just a basic prototype that displays a fraction of it's real potential in the lives of its users. Many features could be implemented that would make the user experience of the application much better than it already is. In the future, Trackify will look to implement features such as auto-cancelling subscription options, and options to restart and renew subscriptions directly through the application. We also imagine Trackify being able to track not only subscriptions, but all online spending for the user, to make our application the ultimate one-stop shop for all digital transactions.