OpenMRS Interoperability and Integration Updates
Focus on OpenMRS interoperability & integrations at facility-level
Mondays at 9 AM EST, 4 PM EAT - Link: meet.google.com/ksh-mdae-rtw
Represented organizations: UCSF, UgandaEMR, Palladium, Mekom, MSF/Madiro
Examples: Laboratory, billing, stock management, etc.
Objectives
Share knowledge and use cases about data exchange use cases
Align on practices, tools, and architectures
Deliverables
Map ecosystem of existing solutions and challenges to address them as a group
Framework for integration
Sets of routes
Documentation about how to integrate OpenMRS with other health systems
Calls and notes
Call cancelled, low attendance
Wei (UCL), Siddharth, Romain, Eudson, Michael
Orthanc integration
Flows:
Order made in OpenMRS (radiology order planned in next 2 months) to be sent to Orthanc
Periodic sync from Orthanc to OpenMRS
Orthanc ID to be added to OpenMRS for mapping
Questions:
How to map/merge patients coming from Orthanc to OpenMRS ID? → For now, direct 1:1 mapping between the 2 systems (No CR)
SSO for login and privilege integration - Orthanc authentication Documentation and repo
Priority:
Link to patient/study in Orthanc in OpenMRS patient file
Later on, we can imagine a preview or iframe in OpenMRS with imagery
Next:
Add EIP-OpenMRS-Orthanc routes in Ozone repo (new repo created: https://github.com/ozone-his/eip-openmrs-orthanc/tree/main )
Wei (UCL), Siddharth, Romain, Eudson, Michael
Orthanc integration
Flows:
Order made in OpenMRS (radiology order planned in next 2 months) to be sent to Orthanc
Periodic sync from Orthanc to OpenMRS
Orthanc ID to be added to OpenMRS for mapping
Questions:
How to map/merge patients coming from Orthanc to OpenMRS ID? → For now, direct 1:1 mapping between the 2 systems (No CR)
SSO for login and privilege integration - Orthanc authentication Documentation and repo
Priority:
Link to patient/study in Orthanc in OpenMRS patient file
Later on, we can imagine a preview or iframe in OpenMRS with imagery
Next:
Add EIP-OpenMRS-Orthanc routes in Ozone repo (new repo created: https://github.com/ozone-his/eip-openmrs-orthanc/tree/main )
Deployment of dev-his.openmrs.org
Done, needs to fix the app switcher config. Fixing in progress.
Update on the README to point to direct access to apps by URL.
Next:
Enable SSO.
Enable Ozone Analytics
Stock & Price visible in O3 upon ordering.
openmrs-module-fhirproxyis now done.fhir-odooAPI is now done.Need to implement the FHIR endpoints in Billing & Inventory OpenMRS modules. @Amos Laboso to reach out to Mekom regarding coding those FHIR endpoints.
UI implementation is happening ( @Usama Idriss Kakumba assigned to https://openmrs.atlassian.net/browse/O3-4009 ).
Testing currently in progress: finding some issues: initial development of OpenMRS module FHIR proxy done against
2.4.xand appears not compatible with2.6.x, currently being looked at.
LIMS integration
SENAITE enabled as the default LIMS option in OpenMRS distro HIS
OEG integration still halted. Progress pushed to and documented on https://github.com/ozone-his/eip-openelis-openmrs
Deployment of dev-his.openmrs.org
Done, needs to fix the app switcher config.
@Emmanuel Nyachoke to fix it this week.
Demoed at the conference multiple times.
Stock & Price visible in O3 upon ordering.
openmrs-module-fhirproxyis now done.fhir-odooAPI is now done.Need to implement the FHIR endpoints in Billing & Inventory OpenMRS modules. @Amos Laboso to reach out to Mekom regarding coding those FHIR endpoints.
UI implementation is happening ( @Usama Idriss Kakumba assigned to https://openmrs.atlassian.net/browse/O3-4009 ).
Ozone Analytics
Ozone Analytics is now open source: https://github.com/ozone-his/ozone-analytics
LIMS integration
OEG integration work is halted until the missing features are implemented.
Will touch base weekly to assess the progress and resume work when a number of the features are fixed.
Enable SENAITE as the default LIMS option currently in progress (PR in review and a bug reported) https://openmrs.atlassian.net/browse/HIS-15
Deployment of dev-his.openmrs.org
Work necessary in Ozone to build bundled Docker images is now done and currently being deployed (on the Ozone side).
Deployment of OpenMRS Distro HIS should be done through a Bamboo job - done by today or tomorrow.
FHIR API for Odoo
Proposed architecture: https://miro.com/app/board/uXjVKv4-SII=/?share_link_id=473611286361
Work has started.
Odoo Java Client: we will be using the Odoo Java API project as a Java client for Odoo XML RPC API → https://mekomsolutions.atlassian.net/browse/OZ-688 is not necessary anymore.
OpenMRS module FHIR Proxy work is started. Will get more updates after the Ozone internal call.
HAPI FHIR server work started today. Will get more updates after the Ozone internal call.
MambaETL
Ozone Analytics
Open sourcing of Ozone Analytics will be started by @Kakumirizi Daud this week.
LIMS integration
OEG integration work is halted until the missing features are implemented.
Will touch base weekly to assess the progress and resume work when a number of the features are fixed.
Will enable SENAITE as the default LIMS option for now. https://openmrs.atlassian.net/browse/HIS-15
Deployment of dev-his.openmrs.org
Delayed few days: init. estimate on end of last week. Looking at mid this week now. (technical work is done so that child distributions can build those Docker-embedded images).
Unable to reach out to Rafal. Scott has not answered regarding if a Bamboo job already exists or not.
FHIR API for Odoo
MambaETL
Technical architecture call on Thursday
Simplicity of deployment (OMODs and/or SQL script)
Ability to dynamically flatten encounters and transpose questions as columns
Concerns over:
Change Data Capture done through monitoring some specific database fields (
date_changed,date_voided…) instead of default mechanisms (binlog…)Performance concerns (due to a lot of indexing) for 10M records databases.
Little to no testing.
Ozone Analytics
Open sourcing of Ozone Analytics will be started by @Kakumirizi Daud this week.
OEG integration
Project updates shared by Suruchi: integration work is being delayed (+1 week already) by low responsiveness from OEG devs. Attempting to setup weekly calls.
Eudson advises to not implement any workaround and rather wait for OEG folks to answer.
Deployment of dev-his.openmrs.org
Development work needed to deploy embedded distro Docker images is well advanced. Est. done by mid-week.
Then reaching out to Rafal in OpenMRS community to deploy via Bamboo.
Q: @Emmanuel Nyachoke where to deploy the OpenMRS Distro HIS-embedded Docker images?
FHIR API for ERPNext (or Odoo)
From Slack message Odoo might be a better fit for the default ERP system in Ozone and OpenMRS distro HIS.
Work needed to have ERPNext expose a FHIR API still needs to be documented as an example. Current work could be pushed and documented so to be picked up and resumed by other group.
ChargeItemDefinitionandInventoryItemexposed in Billing & Pharmacy modules needs to start. Mekom will provide guidance. Need to use the https://github.com/ozone-his/fhir-structures-backport-r4/ library.
MambaETL + Oz Analytics
Plan a call this week between UCSF and Mekom to look at Mamba ETL in terms of incremental updates.
DHIS2 / DHIS Tracker integration:
Integration with Tracker. Advises to look at the Ethiori REDCap integration.
Integration DHIS2 (analytics). Advises to look at the Ozone Analytics when integrated data analytics.
OEG integration:
OpenMRS patient and Lab test order is synced in OpenELIS
Results from OpenELIS are synced in OpenMRS
Modification of lab order cancels the existing lab order in OpenELIS and creates a new lab order
Discontinue lab order in OpenMRS cancels the Incoming Order in OpenELIS
Deployment of dev-his.openmrs.org.
In progress: 2 PRs:
Work halted this week due to vacations. Will resume next week.
FHIR API for ERPNext:
Architecture still in progress. Leaning towards running HAPI FHIR to transform and expose FHIR objects from the ERPNext database.
Architecture will be defined this week and implementation started the week after.
Analytics in OpenMRS Distro HIS: Ozone Analytics + Mamba ETL
3 tickets to be worked on:
Planned a demo session of Mamba ETL w/ support of incremental changes lead by UCSF. (to be scheduled to next week)
OEG integration in progress:
Notion board: https://www.notion.so/mekom/OpenMRS-disto-HIS-integrated-with-OpenELIS-Global-597eea5b1d6e4305b0dc472b9682d505?pvs=4
Automated configuration w/ OEG only supported w/ Liquibase.
Unblocked to create Patients visible in new UI.
Mid-next week first delivery. Identify exactly what will be demoed by this time. @suruchi dhungana to update.
Deployment of dev-his.openmrs.org server:
Will be looked at tomorrow.
FHIR specs for ERP Processes completed. Link: https://docs.google.com/document/d/1uvJwYCGZg_wnt5eMCFLBIJoWU4CQaUWSKENvHrR-MEg/edit?usp=sharing
Designs for Price + Stock upon ordering will be added in Zeplin today.
Need some architecture call with Wyclif regarding exposing the FHIR API of the ERP (and authenticating to it)
SSO: Should be configurable to be enabled by implementers.
Custom systems integration:
Ethiori being integrated with a custom LIMS. → good progress done in Ethiori hackathon.
Used as an example to add more integrations.
Enabling SENAITE in OpenMRS distro HIS:
@Stephen Senkomago Musoke starting evaluation of SENAITE integration.
Patients are synced
Lab orders not tested as unable create orders with admin users. Reached out on the #ozone channel.
Mekom reported some issues with the Lab order basket (unable to revise order).
DHIS2 integration by @Michael Bontyes . Interested in looking UgandaEMR existing DHIS2 integration.
MSF scope: Initialize a new OpenMRS instance with DHIS2 patients (w/ DHIS2 ID + demographics)
Using OpenFn to send the new patients and data points.
Business logic available on GitHub.
Analytics in OpenMRS Distro HIS: Ozone Analytics + Mamba ETL
3 tickets to be worked on:
Planned a demo session of Mamba ETL w/ support of incremental changes lead by UCSF. (to be scheduled to next week)
OEG integration in progress:
Notion board: https://www.notion.so/mekom/OpenMRS-disto-HIS-integrated-with-OpenELIS-Global-597eea5b1d6e4305b0dc472b9682d505?pvs=4
EDD mid/end-aug
Deployment of dev-his.openmrs.org server:
Will be looked at next week.
FHIR specs for ERP Processes completed. Link: https://docs.google.com/document/d/1uvJwYCGZg_wnt5eMCFLBIJoWU4CQaUWSKENvHrR-MEg/edit?usp=sharing
Designs for Price + Stock upon ordering will be added in Zeplin today.
Need some architecture call with Brandon regarding the ability for O3 to query multiple backends.
Need some architecture call with Wyclif regarding exposing the FHIR API of the ERP (and authenticating to it)
Custom systems integration:
Ethiori being integrated with a custom LIMS.
Used as an example to add more integrations.
The week after next, prepare a demo/call to run through the Ethiori LIMS integration compared to say, SENAITE integration).
Enabling SENAITE in OpenMRS distro HIS:
@Stephen Senkomago Musoke starting evaluation of SENAITE integration. Will provide more updates on #ozone channel by EOD.
DHIS2 integration by @Michael Bontyes . Interested in looking UgandaEMR existing DHIS2 integration.
Analytics in OpenMRS Distro HIS: Ozone Analytics + Mamba ETL
3 tickets to be worked on:
We can assume that MambaETL is supporting incremental changes.
OEG integration in progress: Exact extent of the work is identified. Mekom to outline a timeline and provide regular updates on this call.
Deployment of dev-his.openmrs.org server in progress: Mekom and OpenMRS devops have met: Need to modify Ozone so that it provides Docker images with the configs+binaries embedded in the image. Work should be started around next week.
FHIR specs for ERP Processes completed. Link: https://docs.google.com/document/d/1uvJwYCGZg_wnt5eMCFLBIJoWU4CQaUWSKENvHrR-MEg/edit?usp=sharing
Focus on the common parts of ERP processes:
Stock levels displayed upon ordering.
Product price displayed upon ordering.
Comparison between FHIR spec vs OpenMRS designs in progress. Done by Kevin.
Analytics in OpenMRS Distro HIS: Ozone Analytics + Mamba ETL
Possible to only send to Ozone Analytics some tables from Mamba: the ones for which we know the model.
OEG integration in progress: Define exact extent of the work needed. Mekom to outline a timeline and project manage.
Deployment of dev-his.openmrs.org server in progress: Mekom and OpenMRS devops have met: Need to modify Ozone so that it provides Docker images with the configs+binaries embedded in the image.
FHIR specs for ERP Processes complete. Link: https://docs.google.com/document/d/1uvJwYCGZg_wnt5eMCFLBIJoWU4CQaUWSKENvHrR-MEg/edit?usp=sharing
Focus on the common parts of ERP processes:
Stock levels displayed upon ordering.
Product price displayed upon ordering.
OEG integration in progress: Define exact extent of the work needed. Mekom to outline a timeline and project manage.
Testing of OpenMRS Distro HIS in progress.
ERPNext processes confirmed to be working.
Documenting how Implementers can adopt OpenMRS Distro HIS-> to be reviewed by @Stephen Senkomago Musoke
Investigate how OpenMRS Distro HIS can be adopted
Direct inheritance from Ozone.
Inheritance of OpenMRS Distro HIS.
@Stephen Senkomago Musoke to try both options.
Deployment of dev-his.openmrs.org server in progress: Mekom and OpenMRS devops to meet tomorrow.
FHIR specs for ERP processes progressed. Almost ready to be shared.
@Stephen Senkomago Musoke is looking into trying Superset within Ozone.
Mamba ETL flattened encounters tables must be forwarded to the PostgreSQL analytics table (from Ozone Analytics) as to be available as 1 single datasource in Superset.
Not so straightforward as the table columns is dynamic.
Need to find a way to identify a source data model and create the corresponding target database
→ Set to the agenda next week. Invite @Wyclif Luyima @Emmanuel Nyachoke @Arthur D. Mugume @Laureen Omare .
OEG integration in progress: See Slack conversation between Mekom and UW.
Testing of OpenMRS Distro HIS in progress.
No demo patients created when running start-demo.sh. Further testing needed. Might need some documentation improvement → @Stephen Senkomago Musoke confirms that demo patient are created.
Testing of the actual integration between OpenMRS and ERPNext in progress. Should be done by mid-week by @Stephen Senkomago Musoke .
Create patient in OpenMRS
Create an order for that patient
See the patient in ERPNext
See the quotation opened in ERPNext
Documenting how Implementers can adopt OpenMRS Distro HIS → redirect to Ozone docs here: https://docs.ozone-his.com/create-distro/
Example of Ozone LIME: https://github.com/MSF-OCG/LIME-EMR
Example of KenyaHMIS: https://github.com/palladiumkenya/kenyahmis/tree/main
Investigate how OpenMRS Distro HIS can be adopted
Direct inheritance from Ozone.
Inheritance of OpenMRS Distro HIS.
Deployment of dev-his.openmrs.org server in progress: host is ready on OpenMRS infrastructure. Next step is to actually deploy OpenMRS Distro HIS (need to identify how can do so).
No progress on FHIR specs for ERP processes. @Romain Buisson will provide updates in next call.
@Stephen Senkomago Musoke is looking into trying Superset within Ozone.
Discuss how we could leverage on Mamba ETL flattening in Ozone Analytics.
Superset alone (in Ozone FOSS) is decommissioned for now in favor of running it with Ozone Analytics.