Since we are returning from Home to office after all the Covid scenario, it’s important for us to get vaccinated to keep ourselves, our colleagues, friends and strangers Safe.
What it does
This application allows the smooth transition of back to work policy. So, For the benefit of IT companies and vaccination clinics to make their job easier our application provides the easy access to register for the vaccination and keep the Management notified so that they can allow the employees back to office.
How we built it
We created two different applications on a Pega 8.5.2 - One is named New Adhyay and is served as a company portal, and the other is named Hygieia - a health care organization portal. These two applications are integrated with each other to share data whenever required, according to the use case.
Challenges we ran into
• When building the mobile app for our project, we faced an issue with Mobile preview app throwing exceptions. This was due to the values of date properties in our case type having null.
• It was challenging to place a chat bot in the portal. Also, the chatbot was saving history for each operator. Additionally, in the chatbot all the options are displayed horizontally. if the source property is getting the results from datapage if the property for display and value to store are different then header border for options is not displayed correctly.
• Implementing Advanced data visualization(Double-doughnut) - once the double doughnut is configured, changing any configurations on section in devstudio relating to it was not possible, we had to re configure it from scratch.
• To use OOTB feature of pega for sending the OTP we got to use Amazon SNS. We switched it to twilio for sending the SMS
Accomplishments that we're proud of
• Dynamic operator creation The employees visit their company portal (New Adhyay) and click on a link to register for vaccination. Under the hood, a REST integration enables us to send the employee information to the Health care organization (Hygieia). An operator is created for that employee with the password being their DOB in a certain format. The employee receives these details via an email on click of register for vaccination.
• Google maps Integration to show near-by medical centers We have consumed the API provided by Google Maps to pass in a certain location and get all nearby medical clinics available within 15 KM radius. This list from the API response is then checked with the list of centers that the Hygieia organization tied up with, and the user is shown the final results as markers on the map control. We have given option for the user to either show centers near to their current location or near to their home address.
• Payment gateway integration (Stripe) The payment process for the vaccination was achieved using the Stripe Payment Gateway (test-developer account).
• Document viewer in browser from application - (Providing it as component) When the users submit an ID proof for vaccination, the admins of Hygieia have to approve the proofs. For the admins to view these, they need not download them. We have made it easier - just one click on the View link and we see the document pop up in a new browser window. Once the component is installed, Just by providing the Instance handle key of the case to the url, the first attachment(pdf/jpg-can be extended to png as well) of the case can be viewed in the browser instead of downloading it, to reduce unnecessary downloads.
• OTP verification We have used Twilio SMS integration to send an OTP to the user when processing the payment for the vaccination. This OTP sent needs to be entered in the payment pop up, on failure of which, the payment will not be successful. For verification and generation of OTP we have used OOTB feature of Pega.
• QR code generator Once a user is successfully registered for either Dose 1 or 2 of the vaccination, a QR code is generated. It is sent over to the user along with the appointment details via email. This QR code is then scanned by the security guard/reception of the medical center and are verified.
• Chatbot in the portal We have configured pega Chatbot and the use case in our project is for the user to be able to reschedule the appointment just by chatting with the bot. On successfully answering the questions of the bot, the appointment would be rescheduled and another email would be sent out to the user.
• DWA for feedback We have used Directed Web Access for getting the feedback of the vaccination process from the user. Once the appointment is done and the user is vaccinated, an email is sent to the user with the a link to enter feedback.
What we learned
• We as a team got better exposure on how to delegate various individual tasks that would be combined to form the whole project. Also, the collaboration was great and communication was the key in bringing together all the various elements of our project.
• Designing the UI/UX for the application was fun and something that we as pega developers wouldn't do every day.
What's next for NewAdhyay
There is a lot of scope for extending this project. Few of our ideas are listed below:
• This will be of great app since most of the offices are switching back to normal and the vaccination process can be made completely digital.
• We could also extend this on the side of distribution of vaccines to multiple clinics.
• We could add a feature of letting the user cancel the appointment to any personal reason and revert their payment.
• We could add more reporting elements for many different use cases in both the portals - the company portal and the health care organization portal.
• This could be extended to other health related consultations. Let's say a user isn't feeling well after the vaccination, they can schedule a video consultation with the doctor.
• We Could eliminate manual verification of dose 1 proof while registering for dose 2, We can incorporate OCR scanner to fetch the details and validate against our Data Base.
• We could also eliminate the manual verification that the security guard/ the receptionist does when the users comes to the medical clinic. We could have image analysis and match the proof image that user uploads when registering and the one that they bring to the clinic.
• The mobile application can be made into an APK.