Channelling Overview - hmislk/hmis GitHub Wiki
Channelling Overview
Channelling is the system used to book patients for consultant appointments at a specific date and time. It is the primary workflow for managing scheduled outpatient consultations with specialists and visiting doctors.
What Is Channelling?
In HMIS, channelling refers to the complete process of:
- Scheduling a consultant session (the doctor's available time slots or token numbers)
- Booking a patient into that session
- Managing the patient through the queue on the day of the appointment
- Collecting payment and issuing a bill
Channelling is distinct from OPD walk-in consultations. In channelling, a patient is booked in advance into a specific session instance (a scheduled occurrence of a doctor's clinic), whereas OPD walk-in patients receive a token on the spot without a prior booking.
Key Concepts
Consultant
A specialist or visiting doctor who holds channelling sessions. Each consultant belongs to one or more specialities (e.g., Cardiology, Paediatrics, Neurology).
Speciality
A clinical discipline used to group and filter consultants (e.g., Cardiology, General Surgery, ENT). When booking, staff first select a speciality to narrow down the consultant list.
Session
A recurring schedule that defines when a consultant holds their clinic — for example, "Dr. Perera, Cardiology, every Tuesday 09:00–12:00, maximum 30 patients." Sessions carry fee information and numbering rules.
Sessions come in two types:
- Slot-based (time-based): Each patient is given a specific appointment time within the session window.
- Token/unlimited: Patients are given a serial token number and seen in order — no fixed time per patient.
See Channel Session Type: Slot-Based and Channel Session Type: Token / Unlimited for details.
Session Instance
A single occurrence of a session on a specific calendar date. For example, the Tuesday session above generates a session instance for each Tuesday it runs. The session instance holds the actual bookings for that day, its status (Scheduled, Ongoing, Completed, Cancelled), and real-time counts.
Booking
A patient's reservation within a session instance. Each booking produces a channel bill and assigns the patient a serial number or time slot.
Booking Lifecycle
Session Instance Created
↓
Patient Booked → Bill Issued → Payment Collected
↓
Day of Appointment:
Doctor Arrives (session marked Arrived)
↓
Session Started
↓
Patients Called One by One (Queue)
↓
Session Completed
At any point before the session starts, a booking can be:
- Rescheduled — moved to a different session instance
- Cancelled — removed with a cancellation record
- Refunded — payment returned to the patient
- Transferred — bill moved to a different session
Navigation Path
Channelling is accessed from the main menu:
Menu → Channelling
The Channelling menu contains:
| Menu Item | Purpose |
|---|---|
| Channel Booking View | Main live booking screen |
| Channel Booking — By Dates | Browse and book across a date range |
| Channel Booking — By Month | Monthly calendar view |
| Channel Schedule | Today's sessions for the logged-in doctor |
| Channel Queue | Live patient queue for a session |
| Channel Display | Waiting room display board |
| Past Bookings | Search historical bookings |
| Channel Bill Search | Find channel bills by patient or date |
| Doctor Leave | Mark a consultant as unavailable |
| Channel Scheduling | Admin hub for managing sessions and schedules |
| Payment | Pay doctors and agents |
| Cashier Transaction | Record income and expenses |
| Credit/Debit Note | Raise financial adjustments |
| Reports | All channelling reports |
| Channel Analytics | High-level dashboards |
| Management | Agencies, consultants, specialities |
| Patient Portal | Patient self-service |
| Doctor Card | Consultant profile and card |
Required Privilege
Access to the Channelling menu requires the Channelling privilege. Individual menu items have their own sub-privileges (e.g., ChannellingChannelBooking, ChannellingPastBooking, ChannelSessionManagement).
Contact your system administrator if any menu items are not visible.