Connecting patients to doctors for online consultations via chat, video call, or voice call
Our clients contacted us with an idea for a bilingual mobile healthcare app that would enable frictionless communication between doctors and patients. After one of our client’s friends faced a situation where they couldn’t get ahold of a local doctor to help their mother, our clients realized the need for a mobile solution to instantly connect patients to doctors so they could receive immediate help.
The number of smartphone users in Malaysia is estimated to reach 20.96 million in 2018. This means there’s great potential for mobile healthcare solutions that allow patients to access their medical information anytime and anywhere and contact a care provider from the comfort of their own home. What’s more, e-Health will be playing a more significant role in Malaysia’s health sector in the foreseeable future.
We built a native app for doctors (who use iPads) and a native app for patients (who use iPhones). The app allows patients to communicate with doctors either by chat, video call, or voice call, describe and show symptoms, and pay for services.
Using this solution, doctors can manage their time effectively, keep patients' medical records, and get paid for their consultations. Patients, on the other hand, can select an online doctor, connect to them in minutes and have a live video visit, get prescriptions, and order medications and have them delivered.
Before building the app for patients, we analyzed similar applications that are already on the Malaysian market to understand their concepts. The Malaysian apps are overabundant with content and are rather unusual for the western market and look more like web apps.
Also, one of the main requirements for our clients’ app was that it be bilingual (English and Malay) so that users could change the language in the app’s settings. Therefore, we needed to consider the size of the Malaysian font when designing the UI.
Taking into account that the apps were meant for the medical sector, we chose patterns that would be familiar for our app’s users, including a dynamic homepage (widely used in this market).
We researched mobile medical apps in Malaysia and discovered that doctors prefer tablets since these devices allow them to better view scans, see patients during video calls, and type. Keeping that in mind – and the fact that there’s already a lot of optimized software for tablets – we chose the iPad as our target device for the doctor’s app.
We agreed on a color palette with our clients and used their existing branding and logo. Our clients also provided some graphics.
We chose the REST API for the backend of both mobile apps because of its flexibility and simplicity. During development, we also used Amazon Web Services to better manage the app’s infrastructure and networking as well as to mitigate security risks.
Our team implemented two types of authentication: by email for doctors and by phone number for patients, who receive single-use passwords. In addition, the application supports authentication using Facebook and Google accounts.
To enable real-time consultations, we used WebSockets, as it’s a well-tested and stable solution.
We designed the app to collect patient data (medical information, history of illnesses and consultations, medical documentation, etc.) so that doctors could easily see medical information about patients.
We used SendGrid, an email delivery service, to send emails confirming registration, and used Amazon Simple Notification Service to deliver push notifications to doctors and patients.
To enable in-app payments for consultations, we integrated the 2CheckOut payment system, which is a credit card payment SDK that’s popular in the target market. We integrated Twilio to enable high velocity video and audio calls.
We also enabled authentication through SMS on the patient app with Twilio service: patients get a single-use password on their device to login. For real-time chat, our client asked us to use PubNub as it’s a fast and cost-effective service. In addition, we developed a custom synchronization mechanism to retrieve message history.
Before contacting a doctor, patients need to fill out a form with a description of their symptoms and illnesses, the timeline of their illness, and photos or other files if necessary. After viewing this information, doctors can accept the patient’s request. On finishing the session, doctors can leave a consultation summary with further recommendations.
Both types of users have flexible payment options, including pre- and post payments of consultation.
Patients can like doctors in the app, becoming their followers. Doctors can see their number of followers on the homepage. Patients can also receive notifications when new articles of the doctors they follow appear.
Patients can communicate with doctors who are online either by chat or by video or audio call. Doctors can offer all services or limit them to just one option, and can indicate the cost of the service which requires payment or leaves patients free of charge.
Doctors can create profiles, which are displayed in the patient’s app along with ratings, reviews, and number of cases seen. The doctor’s app gives care providers the ability to make notes about their contacts within the app and to review history of all activities done using the platform.
Patients can upload medical reports, X-rays, CT scans, MRI scans, and immunization records to keep them at hand and share with doctors privately. They can also view list of all events, happened with their account: consultations, payments, notifications etc.
The app has its own internal currency (credits), and patients can add credits to their account by bank transfer or electronic/credit card payments. Both patients and doctors can see their transaction history.
The app contains articles to help users learn about illnesses. All articles are written by certified doctors who offer their services within the app.