This guide is currently In-Progress. Over the next few months, content will be added to it. If you have any suggestions or would like to add pages which talk about the functionality of Bahmni, please feel free to add them. |
A normal Bahmni server is required with system requirements as specified here. Additionally, an extra omod (bahmni-offline-sync) and a service (Bahmni-event-log-service) is required for the Bahmni Connect App.
Needs Bahmni-offline-sync omod. To install, run the following command:
yum install bahmni-offline |
This will get the corresponding omod and places it in /opt/openmrs/modules .
Needs bahmni-event-log-service. To install, run the following command:
yum install bahmni-event-log-service |
We can also install the above mentioned components using bahmni install command line. For achieving that, one has to edit the inventory file by specifying the IP address in the inventory file under bahmni-offline and bahmni-event-log-service
|
Setup Bahmni Connect Sync strategy under OpenMRS global settings. Connect ships with 2 such strategies and you may even develop and plugin your custom strategy. The strategies packaged are
bahmniOfflineSync.strategy = org.bahmni.module.bahmniOfflineSync.strategy.IDBasedSyncStrategy |
bahmniOfflineSync.strategy = org.bahmni.module.bahmniOfflineSync.strategy.LocationBasedSyncStrategy |
As part of initial sync, the offline app pulls the concatenated version of the configs in bahmni_config. To concatenate the configs, run the following command.
bahmni -i <inventory_file> concat-configs |
We highly recommend you to add separate offline config folder for Bahmni Connect as Connect supports only Clinical and Registration modules. One can download the offline folder from default-config repo and place it in /var/www/bahmni_config folder. Run the above concat-configs command after adding the offline folder. |
From release v0.89, as part of initial sync the offline app syncs all the patients belonging to the LoginLocation/Filter at once instead of syncing one after the other. This is done to reduce the initial sync time. For this to happen, there is a scheduler which runs every night which creates one zip file per filter containing all the patients data for that filter. You can also trigger the job for creating the zip files manually by running the following command.
bahmni -i <inventory_file> create-connect-artifacts |
All the zip files created as part of the scheduler will be stored in the directory '/home/bahmni/init_sync/'. This can be configured using the global property 'bahmniconnect.initsync.directory'.
If implementer does not run the above command ( create-connect-artifacts ) command, then any patient data will not sync as part of initial sync. |
All concepts and terminologies relevant will be synced. Essentially all concepts that deemed as Offline Available Concepts will be downloaded. For this to happen,
You must have a concept named "Offline Concepts" defined in OpenMRS Concept dictionary. This concept is of class 'ConvSet', Is a set, and datatype specified as N/A. All concepts which are members of this concepts will be synchronized to Connect.
There is an utility script available which will inspect all templates defined under 'All Observation Templates' and add all relevant concepts as members of 'Offline Concepts'. Please refer for more details in Installation Steps - Connect Server for the utility script 'copyOfflineConcepts.py'