400 likes | 528 Views
Immunization Data Exchange (BYIM v 2.0*1). Transport Technical Module Nathan Bunker & John Parker Updated 1/24/11. Faculty Disclosure Statement
E N D
Immunization Data Exchange (BYIM v 2.0*1) Transport Technical Module Nathan 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 State IIS Registry STC HL7 Bridge Internet IHS Clinic ?
Big Picture with HL7 Bridge Local RPMS File Folder Internet HL7 BYIM HL7 Bridge File . . . HL7 State File IIS
HL7 Bridge Architecture • Listener • TCP/IP • File • Sender • HTTPS • TCP/IP • File • Connection • Listener + Sender Connection File HTTPS
Transport Technical Module : STC HL7 Bridge Basic Operation
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
Transport Technical Module : STC HL7 Bridge Configuration
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
Transport Technical Module : STC HL7 Bridge Properties Quiz
email How many problems can you find? Dear site administrator: We have created a new account for submitting your HL7 messages: URL: https://iss.state.us/HL7Interface userId: valleyclinic password: AABB123 Please contact us with any questions. State IIS Help Desk (505)555-1234 connection properties #--------------------------------------------------------- # LISTENER # The listener listens for incoming HL7 messages #--------------------------------------------------------- listener.title=Example for Training listener.enabled=false listener.type=FILE listener.request.dir=C:/request listener.response.dir=C:/response listener.check_interval_in_seconds=15 listener.split=true listener.split.threshold=800000 listener.split.size=500000 listener.split.rejoin=true #--------------------------------------------------------- # SENDER # The sender sends the HL7 message on to its destination #--------------------------------------------------------- sender.type=HTTP sender.send-to.http-address=http://iss.state.us/ sender.account.username=ValleyClinic sender.account.password=AABB123 directories
Transport Technical Module : STC HL7 Bridge Troubleshooting
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 • Confirm HL7 Bridge is running • Confirm HL7 Bridge is reading from /request directory • Configured against wrong directory • Two connections using same directories • 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
Review Reading Connecting Running
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
Transport Technical Module : STC HL7 Bridge TroubleshoOting Quiz
Problem #1 /request folder /response folder izdata20110629.dat izdata20110701.dat izdata20110702.dat izdata20110703.dat • izdata20110629.dat • izdata20110701.dat • izdata20110702.dat • izdata20110703.dat • izdata20110704.dat • izdata20110705.dat • izdata20110706.dat • izdata20110707.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 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| 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?
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 #4 09/22/2009 6:31:36 AM - - Error file opened 09/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
Answer #4 • The HL7 Bridge can’t find the directory where the HL7 data is at • Step #1: Confirm the directory and correct the entry in the appropriate properties file • Step #2: Restart HL7 Bridge • Step #3: Verify files are being processed and no error is created