Do we need to create an appointment when starting an ad-hoc teleconsultation

When we start an adhoc-teleconsultation, should we create an appointment and save it to db? ([BAH-1254] Ability for a doctor/provider to start an ad-hoc Tele-consultation with a patient from within Bahmni. - Bahmni - JIRA)

In the current implementation:

We generate teleconsultation link using patient identifier and return the link

If we need to create an appointment object we can’t have the same ID for all appointments, because appointment Id is used as the meet id for normal appointment flow, should we maintain a separate field? Also if we create an appointment object should we have a separate type to identify it?

CC: @angshuonline @gsluthra

IMHO, we should still create an appointment and mark as teleconsultation. We must have traceability towards such virtual consultation - adhoc or not. even in FHIR, you can encode such teleconsultation , check

FHIR docs do a decent job of describing the distinction between appointment and encounter:

Appointments can be considered as Administrative only, and the Encounter is expected to have clinical implications.

In general, it is expected that appointments will result in the creation of an Encounter. The encounter is typically created when the service starts, not when the patient arrives. When the patient arrives, an appointment can be marked with a status of Arrived.

There should definitely be an encounter. If an interaction is ad hoc, then whether an appointment is created along with the encounter depends on administrative needs of the system. @angshuonline can speak to Bahmni requirements, but from an OpenMRS platform perspective, only the encounter would be required for encounters that were not scheduled.


I feel that creating an Appointment for adhoc TC isn’t a need. The reason being that even today, in Bahmni, Appointments are optional. Patients can visit a hospital, go to registration desk, start a visit (for returning/new patient) and then meet doctors. In such a case – Visit & Encounters would get created, but no appointments. This is because the patient didn’t actually make any Appointments in advance, and hence, there is no need for an Appointment in the system.

I see Appointments as a way of informing & confirming from the Hospital(for facility) that as a patient I can come (in person or virtually) and get a doctor to consult. This helps the hospitals plan for patient load and helps patients know when/where they will get a particular health service. Appointments are a way to track these “planning events”. But - if there is no such “coordinating activity” done, then Appointments should not be needed. As @burke mentioned – Appointments are an Administrative entity - to ease administration/planning of hospitals and for patients’ convenience/better service.

In case of Teleconsultation, if it is ADHOC, it means there was likely no appointment in advance, so to create an Appointment automatically seems to indicate that Patient actually made an appointment (which is not true). I would vote to not create an appointment automatically for Adhoc TC.

It could be “technically” convenient code-wise to re-use Teleconsultation Appointment code, but from my perspective Teleconsulation is a medium of consultation conversation (and not a type of appointment).

My two cents.

1 Like

I think an appointment can be of multiple types - FHIR also supports that. But as @burke mentioned, more important is about encoding to specific “Encounter Type” (pref in OMRS lingo Visit Type) - being virtual. At any point we must be able to distinguish that such an encounter happened in context of an virtual consultation, and not OP or other types.

I would propose that everytime such an TC is launched, Bahmni encodes all consultation against a “Virtual” visit.