Date post: | 17-Dec-2015 |
Category: |
Documents |
Upload: | scarlett-amberlynn-barker |
View: | 213 times |
Download: | 0 times |
Immunization Data Exchange (BYIM v 2.0*1)
Transport Technical ModuleNathan Bunker & John Parker
Updated 1/24/11
Faculty Disclosure Statement As a provider accredited by ACCME, ANCC, and ACPE, the IHS Clinical Support Center must ensure balance, independence, objectivity, and scientific rigor in its educational activities. Course directors/coordinators, planning committee members, faculty, and all others who are in a position to control the content of this educational activity are required to disclose all relevant financial relationships with any commercial interest related to the subject matter of the educational activity. Safeguards against commercial bias have been put in place. Faculty will also disclose any off-label and/or investigational use of pharmaceuticals or instruments discussed in their presentation. Disclosure of this information will be included in course materials so those participating in the activity may formulate their own judgments regarding the presentations. The course directors/coordinators, planning committee members, and faculty for this activity have completed the disclosure process and have indicated that they do not have any significant financial relationships or affiliations with any manufacturers or commercial products to disclose. Mr. Bunker is a Software Developer and HL7 Consultant and has an financial relationships with Cimarron, Comforce, and Crystal Lightning. He has been contracted through IHS to provide EHR consultation and training. Mr. Bunker will not be promoting any of the other products or companies with which he has a financial relationship during this presentation.
HL7 Bridge
• Secure – uses SSL over HTTP • Automated – file sent immediately• IIS must support HTTPS POST method
STC HL7 Bridge
IHS Clinic
StateIIS RegistryInternet
?
Big Picture with HL7 Bridge
RPMS
BYIMHL7File
Local File Folder
HL7File
StateIIS
Internet
.
.
.
HL7 Bridge
HL7 Bridge Architecture
• Listener– TCP/IP– File
• Sender– HTTPS– TCP/IP– File
• Connection– Listener + Sender
Connection
File HTTPS
File Listener
• Looks in /request directory for files to send• Compares with /response directory• If there is no corresponding file in
/response directory, starts process to send file
• Reads file and sends data to configured sender
• Writes response back to same named file
How to Send File
• Place file in configured /request directory• Wait for about 15 seconds• Once the sending process has started the
same named file will appear in the /response
• If file has a size of 0 bytes it is normally still being sent
How to Resend a File
• Delete the appropriate file in the /response directory
• Wait about 15 seconds for Bridge to notice the missing file
• Watch as the file is recreated and the response is re-written in it
How to Delete or Move a File
• Delete or move the file in /request directory first
• Delete or move the file in the /response directory next
• This process ensures the HL7 Bridge will not try to resend while deleting
How to See Errors
• Negative HL7 acknowledgement in response
• Details of the error in the HL7 Bridge /logs directory
Large Files
• HL7 Bridge can send large files• Many State IIS can not process large files• HL7 Bridge can temporarily “split” large
files into smaller ones• HL7 Bridge and put the “split” files back
together again when transmission is done
Return File
• HL7 Bridge creates response based on exactly what was returned from State IIS
• Response could be:– Nothing– Just acknowledgements for error– All acknowledgements– Return file– All acknowledgements + Return file
• Contact State IIS for details
HL7 Bridge Application
• /bin – Program executables• /lib – Libraries for program executables• /logs – Processing details• /props – Connection configuration
• /request• /response
Connection Properties
• File has .properties suffix• Each file represents a connection• HL7 Bridge can run one or more
connections at once• To configure a connection, create or
modify file, save and then start or restart HL7 Bridge
Dear site administrator:
We have created a new account for submitting your HL7 messages:
URL: https://iss.state.us/HL7InterfaceuserId: valleyclinicpassword: AABB123
Please contact us with any questions.
State IIS Help Desk(505)555-1234
directories
#---------------------------------------------------------# LISTENER# The listener listens for incoming HL7 messages#---------------------------------------------------------listener.title=Example for Traininglistener.enabled=falselistener.type=FILElistener.request.dir=C:/requestlistener.response.dir=C:/responselistener.check_interval_in_seconds=15listener.split=truelistener.split.threshold=800000listener.split.size=500000listener.split.rejoin=true
#---------------------------------------------------------# SENDER# The sender sends the HL7 message on to its destination#---------------------------------------------------------sender.type=HTTPsender.send-to.http-address=http://iss.state.us/sender.account.username=ValleyClinicsender.account.password=AABB123
connection properties
How many problems can you find?
The HL7 Bridge:
• Continuously monitors for new files• Always writes a response file • Always creates a response file, either with
the response from the State IIS, or if not available then an HL7 negative acknowledgment with an explanation of the problem
• Never resends messages that error
Where Errors are Logged
• HL7 Bridge logs comments, warnings and errors to a set of files in the /log directory– log.txt
• Contains all notes made by HL7 Bridge
– error.txt • Contains all errors that have occurred
– {connection property file name}-log.txt • Contains all notes for this connection
– {connection property file name}-err.txt• Contains all the errors for this connection
Where Errors are Logged
• If the error happens while sending a message it is logged:– In the master error.txt– In the connection specific -log.txt– In the acknowledgment message generated
• If the State IIS returns a negative acknowledgement the HL7 Bridge does not consider this to be an error.
Steps for Troubleshooting
1. Confirm HL7 Bridge is running
2. Confirm HL7 Bridge is reading from /request directory– Configured against wrong directory– Two connections using same directories
3. Confirm HL7 Bridge can connect to State IIS and excepts userid and password
1. HL7 Bridge is Running
• Are all the files in the /request folder processed with a matching file in the /response folder?
• In Windows is the HL7 Bridge service running? In Unix do you see the process when you run ps -ef | grep java?
• Is the HL7 Bridge sending a file right now?• When you delete a /response file does the
HL7 Bridge try to resend?
2. Confirm Setup Correctly
• Review properties file confirm:– Correct directory indicated– Connection is enabled– No other profile is using the same directory
3. Confirm Connectivity
• Create test file– Use state supplied test message– Create small file with just one HL7 message
• Stop HL7 Bridge• Move out all files in /request directory• Put in test file• Start HL7 Bridge • Confirm test file can transmit
Regular Monitoring
IMPORTANT
The HL7 Bridge only sends HL7 data files
once and does not monitor for problems.
The HL7 Bridge only reports problems when they occur. On a regular basis you must:
Review response files for errors, unexpected responses, and to ensure transmissions are occurring
Review error and log files for issues
Tips
• If available visit the state registry to review import reports and to confirm transmission errors
• Any time you change your ihs.properties information restarting the bridge is required
• Set up TaskMan to run export at least an hour prior to import
Problem #1
/request folder• izdata20110629.dat• izdata20110701.dat• izdata20110702.dat• izdata20110703.dat• izdata20110704.dat• izdata20110705.dat• izdata20110706.dat• izdata20110707.dat
/response folder• izdata20110629.dat• izdata20110701.dat• izdata20110702.dat• izdata20110703.dat
Answer #1
• HL7 Bridge appears to not be running• Step #1: Confirm HL7 Bridge is running
– In Windows check service– In Unix run ps -ef | grep java
• Step #2: Confirm HL7 Bridge is configured to read from correct directory
Problem #2
What can you tell from this error message?• Did the HL7 Bridge find data to send?• Did the HL7 Bridge connect with the registry?• What is the most likely solution to this problem?
MSH|^~\&|5.0^QSInsight^L|^^|DBO^QSInsight^L|QS4444^^|20060327105957||ACK^|1143478797500.100010558|P|2.3.1|MSA|AE|QS444437861000000042|Not logged in: USERID and PASSWORD were not recognized|||207^^HL70357|ERR|^^^207^^HL70357|
Answer #2
• User id or password appears to be incorrect
• Step #1: Confirm username, password and URL are correct
• Step #2: Restart HL7 Bridge to make sure current username, password and URL are in effect
• Step #3: Request resend by deleting response file
Problem #3
What can you tell from this error message?• Did the HL7 Bridge find data to send?• Did the HL7 Bridge connect with the registry?• What problems could be causing this to happen?
MSH|^~\&|||||20060327100747||ACK^||P|2.3.1|MSA|AE||Unable to connect to address 'http://nbunker:8081/iweb_test/HL7Server' Cause: Connection refused: connect|||207^^HL70357|ERR|^^^207^^HL70357|
Answer #3
• The HL7 Bridge was not able to connect to the IIS server at the URL provided
• Step #1: Verify URL is correct• Step #2: Perform manual test to verify
website is operational• Step #3: Restart HL7 Bridge• Step #4: Request HL7 Bridge to resend
file by deleting response
Problem #409/22/2009 6:31:36 AM - - Error file opened09/22/2009 6:31:37 AM: Unable to load property file 'ihs.properties': Problem
reading property 'listener.request.dir' from file 'C:\HL7 Bridge\bin\..\props\ihs.properties': Directory 'D:\hl7bridge\requests' not found
com.stchome.hl7bridge.BadPropertyException: Problem reading property 'listener.request.dir' from file 'C:\HL7 Bridge\bin\..\props\ihs.properties': Directory 'D:\hl7bridge\requests' not found
at com.stchome.hl7bridge.listeners.FileListener.checkDirOk(Unknown Source)at com.stchome.hl7bridge.listeners.FileListener.<init>(Unknown Source)at com.stchome.hl7bridge.Manager.loadConnections(Unknown Source)at com.stchome.hl7bridge.Manager.<init>(Unknown Source)at com.stchome.hl7bridge.Manager.main(Unknown Source)at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)at java.lang.reflect.Method.invoke(Unknown Source)at org.tanukisoftware.wrapper.WrapperSimpleApp.run(WrapperSimpleApp.java:108)at java.lang.Thread.run(Unknown Source)09/22/2009 6:31:39 AM - - Closing file