The module is developed for patient registration, and is able to create new patients including recording of relevant demographics and a standard national address hierarchy, identify previous patients, create barcode with unique ID, scan barcode, record patient vital signs, scan national ID and record which service the patient is attending.
The patient registration runs as a touch screen application. The module uses Baobab Touchscreen Toolkit to simplify the development of touch-friendly user interfaces without requiring each page to be individually and consistently customized for touchscreens. See http://github.com/baobab/touchscreentoolkit.
The touch-screen computers will be configured to start OpenMRS using this form .../openmrs/module/rwandaprimarycare/login/login.form
See Rwanda Primary Care User Guide
Get the latest version from the OpenMRS module repository
--the Rwanda location code is expected to be the three-digit code assigned to each health center by the Rwanda Ministry of Health. For example, the three-digit code for Rwinkwavu Health Center is 416. The primaryIdentifierType should be the identifier type that you just created for primary care registration IDs. If there is the possibility of receiving transfer patients from other health centers where they may have received a barcode, setup the global property: registration.rwandaLocationCodes. These are pipe delimited pairs of Health Centers by name, and Health Center MoH three-digit location code. For example, a valid entry would be "Rwinkwavu Health Center:416|Kirehe Health Center:477|Rusumo Health Center|412". (please verify your location codes before going live).
registration.parentChildRelationshipTypeId). If this global property is empty, check the database to determine the ID of the parent to child relationship type (or create one).
Person.name=Name (Christian name, KINYARWANDA name)
(Note: this section already assumes that you have installed Ubuntu on your touchscreen, and that the touchscreen drivers are working correctly. These do not have to be powerful machines in the least -- all the touchscreen has to do is run Firefox or Chrome. In Rwinkwavu, we're using J2 touchscreens, which are heavy-duty, and suitable for outdoor use.)
1) Configure Firefox for the touchscreen user:
2) Lock-down Ubuntu into a Firefox kiosk
3) Configure automatic login
7) it is also recommended that once a firefox profile is established that works correctly in touchscreen mode, and prints barcodes correctly, that a tar file is created of the firefox profile, and that this tar file overwrites the existing firefox profile at startup. We have seen several instances where the barcode file that is downloaded becomes linked to the wrong application, or the firefox homepage gets reset to something other than the touchscreen interface page in OpenMRS. By restoring the firefox profile at startup, these errors can be fixed with a simple reboot.
to create your tar file:
1. go to touchscreen <<user's home directory>>/.mozilla/firefox
2. read the profiles.ini file to determine the profile folder used by the user when accessing the OpenMRS registration module. This should be the profile that has the kiosk setup. Mine was called i2c33y1i.Registration.
3. create the tar file with the command: tar -cvf /home/<<username>> ./<<firefox profile folder>>. For me this was tar -cvf /home/user ./i2c33y1i.Registration
4. chmod 777 on the newly created tar file in the user's home directory
5. now sudo to root and create an init.d script, referred to in these instructions as <<firefox reset script name>>, to unpack the tar file and overwrite the firefox profile at startup. To do this create a text file with a name like 'firefox-reset' in /etc/init.d and chmod 755 on this file.
6. here are the file contents (fill this in with your local settings):
#! /bin/sh -e
tar -xvf /home/<<username>>/<<tarfile name>> --overwrite --absolute-names --preserve-permissions --directory /home/<<username>>/.mozilla/firefox
7. finally, to add the init.d script you've just created to the right run levels, type: update-rc.d <<firefox reset script name>> defaults
If the script doesn't work, or you want to stop running this script at startup, just type update-rc.d -f <<firefox reset script name>> remove
And, note, update-rc.d doesn't expect the path to your firefox reset script. Just type the name of the file. update-rc.d already knows to look in /etc/init.d.
Configure scanner for pdf417, and code128
Need to download the manual and print relevant configuration codes; maybe we can make the beep less obnoxious
See Barcode Printing for details of how to setup the barcode printers using CUPS.