Social dating apps today are all about judging the person before talking to them. We wanted to bring back the old school ways of communication (e.g. Omeggle/ ChatRoulette) but with phone systems.
Basically, speed dating without prejudging someone based on their profile / looks
Originally, we decided on three different ideas - (1) building an app to reduce spam coming to our phone calls, (2) an app for client-side routing on-hold calls from tech support, or (3) this dating app. We stuck with the dating app
What it does
Our idea was to make a phone roulette system - allow users to quickly talk to each other through an anonymous disposable phone VoIP number
How we built it
We used Google Firebase for our backend. This uses cloud functions that use firebase's SDK written in NodeJS. We connect users through a signup form via SMS, using FlowRoute's API. This is handled asynchronously through 2 data-stores on firebase (inbound SMS, outbound SMS). Once a user completes a form, we accept their user profile.
Next, user A calls the 225-800-1080, and user B calls the same number. They get connected using our voice API with api-daze. We match based on preference (e.g. a male looking for a female, a female looking for a male).
Challenges we ran into
We finished our business case at 4 PM Saturday. Presentations started at 2 PM Sunday. We really only had 24 hours to work on this project.
We were up until 2 AM building this out, one developer finally connected everything together and we shoved 12 people in one room just for fun
Twilio has really spoiled us on how easy it is to integrate chat based and voice services. With our sponsor's API, some of the endpoints required SOAP XML format responses. Getting setup through their API's took the entire day, most of these platforms were relatively new.
For technical difficulties, integrating Google Firebase to handle backend routing and integrating this to the frontend took some time. This was the first Firebase project for a few members on the team, we ran into some issues with firebase's free tier (e.g. being unable to send SMS texts or make calls)
Given more time, we would have integrated webRTC and an additional API for post-surveys after the phone call.
Accomplishments that we're proud of
We're proud of building a working app within 24 hours. We presented this project at EnterpriseConnect 2019, a national telecommunications conference. We won a prize from each of our sponsors.
What we learned
Utilizing Google Firebase for both frontend and backend. Integrating various API's (TeleSign, API-Daze, FlowRoute). Putting it all together.
What's next for CallNection
Possibly bringing this to reddit.com and seeing what happens there. Utilizing Twilio for all endpoints instead. Adding additional feature sets. Phone scheduling