Getting started with electronic labs

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