You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: README.md
+4-4Lines changed: 4 additions & 4 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -23,9 +23,9 @@ All documentation is written in Markdown and located in the `docs/` directory.
23
23
24
24
The documentation is split into several parts:
25
25
26
-
*`user` contains the user guide
27
-
*`development` contains information about contributing to Opal
28
-
*`deploy` contains information about how to deploy and run Opal, and how to integrate the Opal services with a hospital
26
+
-`user` contains the user guide
27
+
-`development` contains information about contributing to Opal
28
+
-`deploy` contains information about how to deploy and run Opal, and how to integrate the Opal services with a hospital
29
29
30
30
### Getting started
31
31
@@ -64,7 +64,7 @@ We also enforce [semantic line breaks](https://sembr.org).
64
64
This makes it easier to read in source and also easier to review changes to the text.
65
65
66
66
**Note:** This is an additional rule for `markdownlint`.
67
-
Due to a [limitation](https://github.com/DavidAnson/vscode-markdownlint/issues/336) with the vscode extension this rule is currently only enabled in CI.
67
+
Due to a [limitation](https://github.com/DavidAnson/vscode-markdownlint/issues/336) with the vscode extension this rule is currently only enabled in CI.
-[ORMS](https://gitlab.com/opalmedapps/ORMS)*If wait room support is enabled at hospital*
19
19
20
20
In order to successfully integrate the Opal solution with a hospital data system, the above mentioned application container images must be deployed to an application server and configured with database access, SSL certificates, and environment configuration.
21
21
@@ -95,8 +95,8 @@ Opal-RMS separates private from public APIs and thus any calls to the public API
95
95
96
96
In general the expectation for all Opal API is that payloads and responses are transmitted in JSON format, with a few exceptions.
97
97
98
-
* As an experimental feature, the pharmacy data endpoint within the Opal-backend (`/api/patients/${uuid}/pharmacy`) was created with a built-in HL7 parsing class, the accepted data format is `application/hl7v2+er7`.
99
-
* In the `Requirements for Hospital Endpoints` section (see below), the sending of patient weight measurement PDFs from the wait room management system is expected to be sent with XML data containing a base64 string encoding of the measurement PDF.
98
+
- As an experimental feature, the pharmacy data endpoint within the Opal-backend (`/api/patients/${uuid}/pharmacy`) was created with a built-in HL7 parsing class, the accepted data format is `application/hl7v2+er7`.
99
+
- In the `Requirements for Hospital Endpoints` section (see below), the sending of patient weight measurement PDFs from the wait room management system is expected to be sent with XML data containing a base64 string encoding of the measurement PDF.
100
100
101
101
## OpenAPI Schemas for Opal Source Data
102
102
@@ -105,10 +105,10 @@ For the `Opal-Backend`, we use [drf-spectacular](https://pypi.org/project/drf-sp
105
105
This swagger page is accessible for authenticated users via `/api/schema/swagger-ui`.
106
106
For convenience, all endpoints in all openapi specifications related to integrations have been tagged with the `institution integration` label within the openapi specification.
107
107
108
-
* Opal-Backend: Swagger rendering at {hostAddress}/api/schema/swagger-ui
Historically, the legacy components of Opal did not maintain migrations of the database schema.
174
175
Migrations and initial data (to set up Opal at a new hospital) is maintained in this separate component.
@@ -182,7 +183,7 @@ It is only necessary to run this during setup and upgrade.
182
183
183
184
#### Redis
184
185
185
-
*[Project Page](https://redis.io/)
186
+
-[Project Page](https://redis.io/)
186
187
187
188
Redis is used by _Opal Labs_ to cache patients being processed to avoid sending caregivers multiple push notification times when batch processing.
188
189
@@ -193,8 +194,8 @@ Firebase is used to support passing data from within the hospital firewall to th
193
194
194
195
Opal makes use of two Firebase services:
195
196
196
-
*[_Authentication_](https://firebase.google.com/docs/auth) is used for user accounts (via email and password).
197
-
*[_Realtime Database_](https://firebase.google.com/docs/database) is used to pass requests and responses between user applications and the Opal PIE.
197
+
-[_Authentication_](https://firebase.google.com/docs/auth) is used for user accounts (via email and password).
198
+
-[_Realtime Database_](https://firebase.google.com/docs/database) is used to pass requests and responses between user applications and the Opal PIE.
198
199
199
200
A Firebase user account is created when a user completes the user registration for the first time.
200
201
The Firebase Realtime Database acts as a kind of queue for sending requests and receiving responses.
@@ -213,10 +214,6 @@ TBC
213
214
214
215
https://gitlab.com/opalmedapps/qplus
215
216
216
-
[^1]:
217
-
We consider a caregiver to also include the patient.
218
-
In that case they are caring for themself.
219
-
220
217
### Appointment Checkin Processes
221
218
222
219
A core functionality within the Opal ecosystem is the ability for a patient (or a caregiver of a patient) to checkin to an appointment at the hospital.
@@ -248,13 +245,16 @@ However, ORMs also provides several additional methods of checking in to an appo
248
245
249
246
These are:
250
247
251
-
* Kiosk Checkins - where a patient can scan their hospital card at an ORMs kiosk in the hospital to checkin to all appointments for the day, before proceeding to the waiting room
252
-
* Virtual Waiting Room (VWR) Checkins - where a patient can request to be checked into all appointments for that day at a reception desk, and a clinical staff member uses the ORMs VWR to perform the checkin on the patient's behald
253
-
* SMS Checkins - where a patient can respond to an automated SMS received to their mobile device with the phrase 'Check In' in order to be checked in for all appointments for the day
248
+
- Kiosk Checkins - where a patient can scan their hospital card at an ORMs kiosk in the hospital to checkin to all appointments for the day, before proceeding to the waiting room
249
+
- Virtual Waiting Room (VWR) Checkins - where a patient can request to be checked into all appointments for that day at a reception desk, and a clinical staff member uses the ORMs VWR to perform the checkin on the patient's behald
250
+
- SMS Checkins - where a patient can respond to an automated SMS received to their mobile device with the phrase 'Check In' in order to be checked in for all appointments for the day
254
251
255
252
From the perspective of the Opal ecosystem, all three of these checkin methods are identical in that they result in the same API call(s) from ORMs to Opal, although from a patient perspective they are different.
256
253
257
254
The following sequence diagram details the series of API calls that are made immediately after a patient attempts a checkin from a wait room Kiosk, from their phone SMS, or via a clinical staff member interacting with the ORMs virtual waiting room.
0 commit comments