An iOS application to get video or audio consultations online from qualified medical experts depending on users’ current symptoms and preferences.
For us, DocDoor is not just another project for a startup but a great example of telemedicine app development we’re really proud of. At its core, DocDoor had the idea of getting timely medical consultations in the most convenient way for patients. MBicycle became the one to take this idea further and develop a fully featured mobile solution around it.
The client had already made arrangements with several hospitals about providing their medical experts for online consultations, and then the company needed a team to develop a powerful and robust iOS application for such online medical consultations from scratch. We were lucky to work with the client on their previous project, that’s why they hired the iOS development team from MBicycle, with the design and project management resources on the client’s side.
Our main challenge was to give users a number of valid features to get qualified and relevant medical consultation depending on their symptoms. However, with a prior successful experience in medical app development, we had a clear action plan for this project. We just signed an NDA with the client and got into gear.
Our dedicated work over the course of the next few months resulted in a full-fledged solution for people looking to get online medical consultations at a convenient schedule.
Through the lens of the initial idea, we offered to develop a subscription-based application where users could indicate their disturbing symptoms and get an online consultation from the appropriate specialist at any convenient time.
After discussing our vision of this telemedicine app development with the client and getting their approval, we consistently implemented the following relevant features, increasing the efficiency and convenience of the DocDoor application:
- User registration and authentication
- A calendar with planned and passed consultations, their dates and times, as well as medical reports on previous consultations (i.e. the consultations history)
- Video and audio calls
- In-app payments via the integrated Stripe service
- An interactive map with the available clinics to choose from, with their ratings and doctors’ qualifications
- Ability for doctors to create and sign electronic medicine prescriptions after consultations, which can then be used to buy medicine at a pharmacy
- Option to get consultations for any family member from a single registered account
- Ability to choose symptoms from the list or add patients’ specific symptoms manually
- Flexible choice of the most convenient consultation date and time for patients
- Integration with users’ insurance programs so that consultations are billed accordingly
The Core Functionality
When we got the application design from the client, we started developing the user registration and authentication feature set. Using iOS UIKit, we created a profile form for new users where they could add their personal and contact details, insurance program, family members, as well as payment method.
Further, our development team added the consultation request functionality with the help of PushKit, CallKit, and WebRTC frameworks. We used PushKit to notify users of an incoming call, CallKit to display the native call screen, and WebRTC to transmit audio/video directly during the call. When sending requests, users could specify their symptoms manually or select from the list available in the application, add a payment card and a family member in need of advice, and also choose the type of call with a specialist (audio or video).
As the next step, our iOS team used the CVCalendar Pod to implement an in-app calendar. This feature allowed patients to choose convenient dates and times for their consultations, view the dates and medical reports from past consultations, as well as receive reminders about upcoming calls with medical specialists. Simply put, this works as follows: after a request for an online consultation is approved, an event is added to the user’s calendar, and the user receives a reminder just in time for the consultation.
In order for users to be able to pay with the cards added during registration, we used the Stripe API to connect the Stripe online payment service.
The Extended Feature Set
After the main functionality of DocDoor was developed, our team decided to enhance it with an additional feature set to boost users’ experience with the app.
To provide medical experts with more detailed information on their patients, we extended the user profile. Now users could specify their bad habits, past and chronic diseases, allergies, etc. That helped to eliminate the need for such questions during a consultation and spare more time for doctors to focus on patients’ current symptoms directly.
As our client had already signed up a few clinics to provide medical consultations, we extended the DocDoor feature set with an interactive map of the clinics and their medical experts available at any given moment. Patients can sort the clinics by ratings or the qualifications of specialists they are interested in. To implement this functionality, our development team used the Google Maps SDK.
Another important addition to the app functionality was the option to receive electronic prescriptions from medical experts online. This way, on the basis of online consultation, the doctor can write out an electronic prescription and send it to the patient in a separate file. Our development team used URLSession to implement this feature.
In order to prevent prescription abuse, we developed the feature in a way that would prohibit the use of prescriptions in the offline mode. When a patient uses their prescription at a pharmacy, this information is recorded on the server. This way, prescription data is synchronized, and the app can only display up-to-date information on the number of times a specific electronic prescription has ever been used.
UIKit, CallKit, PushKit
Third-party library APIs
WebRTC, Google Maps, Stripe API
Taking the original idea of DocDoor — providing online medical consultations — further, we have delivered the application for patients to:
- Plan the specific date and time of their remote consultations
- Choose symptoms from the predefined list or add their own
- Get notifications about their scheduled calls with medical experts
- Locate different clinics and available experts on the interactive map, sort them by ratings and qualifications, and choose the right specialist according to their needs
- Get electronic prescriptions online, appropriate for use at pharmacies
- Make safe and fast online payments in the app
- Arrange online consultations for any family member from a single account
We’re proud of having been part of the DocDoor app development, because the faster patients can get qualified medical consultation, the higher the chances they can prevent any complications and stay healthy.