Getting started with electronic labs
- Marc Dumontier
Introduction
This getting started guide will show the required steps to receive electronic labs through OSCAR. The scope of this guide is limited to the technical steps required to install OSCAR's custom Mule server and configure OSCAR to accept labs from it. It basically works by polling one or more directories which are each assigned to a specific type of lab (single lab provider like GDML). When a new file (ending in .hl7) is seen in the directory, it is securely uploaded to OSCAR using a pre-established shared key. Files successfully uploaded are then moved to an archive directory. If you configure the SMTP information, an email can be optionally sent by mule if there is an error processing a file.
Downloading
Download mule-for-oscar from SourceForge.
Installation
This component includes the mule ESB (a very old version) as well as a sample configuration and supporting properties file
The first file is mule-oscar-config.xml and is the main configuration file loaded into mule. It describes the different Transformers and Connectors.The sample one provided is for a single lab provider. If you want other examples..there are some. In keeping with our minimallist approach, we can use this file unchanged.
We need to modify the mule.properties file though. These values will be substituted into the config file by mule on initialization. The default one looks like this
incomingHL7dir1 = /home/marc/HL7Data/incomingHL7Dir errorHL7dir = /home/marc/HL7Data/errorHL7dir completedHL7dir = /home/marc/HL7Data/completedHL7dir keyLocation1 = /home/marc/HL7Data/key/1.key oscarURL = http://localhost:8080/oscar_15 #smtpServer = smtp.changeme.com:25 #senderEmailAddress = changeme@address.com #recipientEmailAddress = changeme@address.com
You will need to set the right directories, make sure they exist, and that the user mule runs as has write permissions to them.
The key comes from setting up a shared key in OSCAR. You must reference the private key here to encrypt the payload.
Set SMTP info if you have it for error reports.
We need to also set MULE_HOME
echo "export MULE_HOME=/home/marc/mule-1.3.3" >> ~/.profile . ~/.profile
Start and Stop mule using the following commands. It runs as a daemon (background)
cd $MULE_HOME ./bin/mule start -config mule-oscar-config.xml ./bin/mule stop -config mule-oscar-config.xml
Your log file is logs/mule.log