Mirth Messaging Module


The Mirth Messaging Module is a basic OpenMRS module that allows communication with Mirth (http://www.mirthproject.org/) to be implemented. It makes use of web services as the means of communication and is quick and easy to setup. This module was developed for a OpenMRS to DHIS integration project where Mirth was used to handle the communication between OpenMRS and DHIS.


This module was in use before OpenMRS had the Rest API, so now it's not necessary, you can connect mirth to openmrs using the rest module, here's a page for it




  • In OpenMRS, navigate to "Administration" and then to the "Manage Modules" page.
  • Click "browse" and select the "mirthmessaging.omod" file from the file system.
  • Click "Add Module" and the module will be uploaded.
  • OpenMRS will automatically try to start the module, some required global properties won't be set so it will fail.
  • Click on the "Administration" and go to "Manage Global Properties".
  • Scroll down until you see "mirthmessaging.emmitHL7" and "mirthmessaging.SOAPendpoint".
    • mirthmessaging.emmitHL7 requires a boolean value. When this option is set to "true" any message created in the hl7_in_queue in OpenMRS will be sent out to Mirth. If this in not required set this option to "false"
    • mirthmessaging.SOAPendpoint requires the SOAP endpoint (the address) of the web service. If you setup a Mirth channel with a SOAP listener the address will be displayed under "WSDL URL:". Please note that the "?wsdl" at the end of the address must be left off when setting the global property.
  • Navigate back to the "Manage Modules" page, the Mirth Messaging Module should now start.

How to use

To make use of this Mirth Messaging Module from another module you need add some code to the config.xml file for that module to say that that the module "requires" the Mirth Messaging Module. Here is the code that must be added:


Then, in the code all that is needed to send an HL7 message (or any supported message) to Mirth is the following:

   new MessageSender().sendHL7Message(msg);

Where msg is a String that contains the message being sent.

Release Notes


This Module was written by ?Ryan Crichton, University of Kwa-Zulu Natal Computer Science graduate.