Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[C4GT] Ability to book an appointment via WhatsApp #572

Open
19 tasks
gsluthra opened this issue May 20, 2023 · 11 comments
Open
19 tasks

[C4GT] Ability to book an appointment via WhatsApp #572

gsluthra opened this issue May 20, 2023 · 11 comments

Comments

@gsluthra
Copy link
Contributor

gsluthra commented May 20, 2023

UPDATE: 11-July-2023 The JIRA issue for this and related issues can be seen here: https://bahmni.atlassian.net/browse/BAH-3101?jql=labels%20%3D%20Code4GovTech

Note: Bahmni team tracks all issues in public JIRA repository. But since Code4GovTech requires all project details to be created in Github, we are writing the project details here. But eventually as per Bahmni community process, the actual stories will tracked in JIRA, and issue number in commit messages will need to be of JIRA ticket number (and optionally Github issue number).

Purpose

Allow patients to book an appointment in Bahmni via WhatsApp.

Introducing Bahmni

  1. Bahmni is an opensource hospital management system, used in low resource environments and is currently live in 600+ facilities across the world, including India, Nepal, Bangladesh, Uganda, Lesotho, Kenya, Cambodia, etc. It is also recognized as a Digital Public Good (DPG) by DPGA and Digital Square Alliance. For more details on Bahmni please visit: https://bahmni.org
  2. One can try out Bahmni online using our demo servers here: Online Bahmni Demo

Feature details

  1. Bahmni has an Appointment Module, to book an appointment for a patient. See documentation here: Create Appointments
  2. The above screen is used by Registration Desk to book an appointment for a patient.
  3. We would like the ability for patients to use WhatsApp for performing an appointment booking. For starters, we can support this feature only for already registered patients in the system (so that we don't have to implement Patient Registration via WhatsApp).
  4. This feature will require the contributor to explore how WhatsApp can be used to speak to Bahmni over REST/FHIR APIs.

Learning Path

  1. Complexity: Medium.
  2. Skills Required: Frontend (WhatsApp API/Programming). Backend (Java, MySQL). Local Install (Docker).
  3. Name of Mentors: @gsluthra @angshu
  4. Project Size: 4-6 weeks

Product Setup

  1. Docker based local setup. See: Running Bahmni on Docker

Acceptance Criteria

  • 1. An existing patient should be able to see available appointment slots in a Clinic for a Service via WhatsApp.
  • 2. Patient should be able to book an appointment via WhatsApp and receive confirmation of booking.
  • 3. The Bahmni UI should show the above booked slot as not-available, and show all details of patient (as it does now). And it should also indicate that this booking was done via WhatsApp.
  • 4. Pull Request reviewed/merged into Bahmni codebase, after feedback from Bahmni core team & mentor has been incorporated.
  • 5. Automation Tests pass on Github Actions CI.
  • 6. New Feature is deployed on our DEV environment.
  • 7. There is configuration which enables/disables this feature (so a Clinic can choose if they want to support this feature or not).
  • 8. All message strings are added into translation files.
  • 9. A showcase is done of this feature in our public Bahmni PAT call (every Wed evening at 6:30 pm IST).

Milestones

  • 1. Install Bahmni locally.
  • 2. Demo the appointment functionality, to ensure the contributor has understood the functionality.
  • 3. Work with mentor to create low-fi design/mockup for how the communication will flow in WhatsApp.
  • 4. Create stories in JIRA (possibly 4-5) which list all requirements to develop this feature.
  • 5. Complete the development (with unit tests), with local showcase from your own machine.
  • 6. Raise PR for each story, and have it reviewed.
  • 7. Merge PRs for all stories.
  • 8. Validate and showcase the feature from our DEV server.
  • 9. Document the new feature in Bahmni public WIKI.
  • 10. Showcase the new feature in Community PAT call over zoom.

C4GT

This issue is nominated for Code for GovTech (C4GT) 2023 edition. C4GT is India's first annual coding program to create a community that can build and contribute to global Digital Public Goods. If you want to use Open Source GovTech to create impact, then this is the opportunity for you! More about C4GT here: https://codeforgovtech.in/

@pvcodes
Copy link

pvcodes commented May 21, 2023

Hey @gsluthra, I'm assuming whatzapp is a typo, you are referring to WhatsApp?

@gsluthra
Copy link
Contributor Author

Want to explore Bahmni?

Please install Bahmni and join our Slack (#community) channel. You can pick a volunteer ticket to get familiar. Thanks!

Links:

  1. Docker: https://bahmni.atlassian.net/wiki/spaces/BAH/pages/3117744129/Getting+Started+Quickly+with+Bahmni+on+Docker
  2. Slack/Bahmni Talk Forum: https://bahmni.atlassian.net/wiki/spaces/BAH/pages/414646273/Communication+Channels+and+Tools+Discourse+Slack
  3. Volunteer JIRA Links: https://bahmni.atlassian.net/wiki/spaces/BAH/pages/116069555/Contributing+to+Bahmni#ContributingtoBahmni-4.ContributeasaDeveloper%2FCoder%2FAnalyst%2FQAtoBahmni
  4. You will need to open a free Atlassian account to self-sign-up on Bahmni JIRA.

@gsluthra gsluthra changed the title [C4GT] Ability to book an appointment via Whatzapp [C4GT] Ability to book an appointment via WhatsApp May 22, 2023
@gsluthra
Copy link
Contributor Author

Hey @gsluthra, I'm assuming whatzapp is a typo, you are referring to WhatsApp?

Yes. Fixed the typo. Thanks for pointing out : )

@SigireddyBalasai
Copy link

I love this

@siddhesh-desai
Copy link

Hello @gsluthra and @angshu! I am Siddhesh Desai. I was impressed by the objectives of Bahmni, and would like to build this feature and be the part of the community as it aligns with my interests and skills. I will be sending my proposal soon.

@KavyaSethia
Copy link

Hello, @gsluthra and @angshu I am Kavya Sethia. Being proficient in Java and making a bot, I would like to contribute to this project and create a bot for the Bahmni. Looking forward to connecting with you and discussing this further.

@Darshan2003
Copy link

Hey @gsluthra and @angshu, I am interested in contributing to this project. Any discord or slack server that I should join?

@hetkumark
Copy link

Hello Mentors, can you please describe what all I may contribute towards this project?

@Aniket28dot
Copy link

Hii @gsluthra and @angshu I have just built this appointment booking system from scratch using Whatsapp business apis a month ago. Also handled several edge cases while developing it (involving schedule and holidays of doctors). I came to know about C4GT just a few days back and was exploring the projects, and I came across Bahmni. Think, I could be of help here.

@vabs212
Copy link

vabs212 commented Jun 5, 2023

hi @gsluthra @angshu i have worked on this type of module but on .net technology. i would like to be a part of this project. i will e sending my proposal soon. hope to be working with you

@angshu
Copy link
Member

angshu commented Jun 8, 2023

@Aniket28dot @vabs212 thanks for your interest in this issue. As you would know, this is meant for Code4GovTech initiative. Hence any proposal must follow the the Code4GovTech process and in appropriate channels. You are most welcome to work with Bahmni community as volunteer, irrespective of a proposal acceptance.
Note, we would like to build in java, as majority of the Bahmni backend compoents are in java, and you can potentially reuse existing libraries, code, patterns etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

10 participants