Using OpenHIM as a middleware between LIS and instruments

Hi All,

We’re evaluating options for an open source project of a middleware between a LIS and various instruments.

I’ve seen mentions of OpenHIM in similar projects, but none of them seems to be active anymore.

Do you think OpenHIM is a good choice in this context ?

Do you know of similar active projects ?

Regards

1 Like

Hi @phb - Great to see you out on Discourse! I will tag some individuals from the Jembi team who work on OpenHIM. @daniel.futerman @ryan @mattdickie

I hope this is helpful in your project.

cc: @janflowers @rsembajwe

1 Like

Hi @kaalcumm and thanks for this

1 Like

Hi @phb,

Probably NextGen Connect?

We do a lot of integration between systems and are very happy with more raw techs such as Apache Camel. That would be for devs that are already quite familiar with EIP.

We also have been asked occasionally about integrating lab instruments with LIMS and we could not ever prioritise it. Maybe there could be some area for collaboration.

All the best.

1 Like

Hi @mksd,

Thanks for pointing us to standard integration tools.

A bit frightened by large java frameworks since we are in a rather constrained environment, but we’ll consider this option in our early POC phase.

Are you aware of Camel implentations of ASTM/LIS2A2 messaging with instruments ?

Regards

Hi @phb

The OpenHIM (alongside its mediators) can handle a lot of data exchange scenarios, so this all depends on your work.
Could you please share a bit more about what you are trying to do? That way we can hopefully point you in the right direction.

Regards,
Matt

Hi @mattdickie,

We are working on a soon to be open sourced LIS targetting small laboratories. It is a basic web application developped with python (flask) . Data is in a MySQL database. The application runs in a container. At this point there is no communication with instruments, but we are evaluating our options to transmit requests and results to and from laboratory instruments.

Instead of adding communication capabilities directly into the LIS, we were hoping to integrate/develop an independant middleware server. Communication between LIS and mddleware using FHIR. Communication between middleware and instruments with tabular data or LIS2 connections.

Regards

@phb that sounds great!

Will the LIS initiate the request for data from the lab instruments? The OpenHIM facilitates this, as well as periodic polling for data from systems.

For your data exchange from your tabular data or LIS2 connection format to FHIR that could be managed by the mapping mediator - translating data from a custom format into FHIR is a common use case. The mapping mediator currently supports JSON and XML messages. The actual conversion to FHIR is up to someone with the whole message flow context. As an example, we have a BAHMNI Patient message that we convert to a FHIR Patient resource using the mapping mediator.

We have documentation on this mediator here as well as a setup tutorial video.

Hope this helps.

Sorry to be slow here @phb . As @mattdickie recommends, developing an OpenHIM mediator could work very well here! At OpenFn we’ve also been working with Jembi to extend the fully open-source offering from OpenFn.org, OpenFn/microservice. Just so you’ve got some options, you should also check that out.

Writing a job for a project that connects MySQL with another application’s REST api takes a few minutes to get up and running… much longer to tweak and test, of course! Once you’re happy with how it works on the platform, you can export it as a project.yaml file (or even a microservice.zip file) to run locally so you’re not reliant on our hosted SaaS.

Check out https://docs.openfn.org/ if you’re keen to learn more.

Hi @phb,

We run Camel middleware components on Raspberry PI for example, along other stuff of course since it’s middleware. And so far so good.

Have a look at the Open eHealth Integration Platform.

As I said, we haven’t done LIMS ↔ lab instruments integrations yet, but should we finally prioritise this work we would definitely implement Camel routes with the appropriate message broker (Kafka?)

Thanks you all for your suggestions and links.
Definitely a few options to check and POCs to build !
I’ll try to report back here on this as much as I can when we start working on the project.

1 Like

Btw @phb, we have selected (and FHIR-integrated with OpenMRS) SENAITE LIMS.
While SENAITE will certainly be our off-the-shelf offer for the foreseeable future, I would be really interested to know more about your upcoming open-source LIMS whenever possible.

1 Like