HL7 messages are sent via a variety of TCP/IP transports, some of which include:
Although HL7 can be transmitted using a variety of transport protocols, the most common transport method for real time point-to-point interfaces is LLP. For systems which require batch HL7 processing, FTP is typically utilized.
Before looking at the common HL7 transport methods, it’s important to understand the basics
of TCP/IP based communication, the roles of the client and server when implementing an HL7 interface, as well as the limits of TCP/IP. Securing HL7 transport.
When implementing an HL7 interface, your interface will either be acting as a Client or a Server.
A TCP/IP server is a program that listens on a TCP/IP port number receiving connections from clients. For instance, a web server is a special type of TCP/IP server that listens on port number 80. A TCP/IP server can have many different TCP/IP clients connected to it.
A typical example of where you might want to implement an HL7 server is when you want to receive an ADT (Admit/Discharge/Transfer) feed to extract, for instance, patient demographics. Typically, you would write your interface as a TCP/IP server. You would then listen on a port number that you could negotiate with your counterparty, and the device sending you the ADT messages will connect to your server. This means you need to give the host and port number that you are listening on to the administrator of the ADT feed so they know how to connect to you.
A TCP/IP client is a program that connects to a TCP/IP server. For instance, Netscape and Internet Explorer are TCP/IP client programs that connect to web servers. A TCP/IP client must specify both the host address or IP address, as well as the port number that it wants to connect to.
A typical example of where you might want to implement an HL7 client is when you want to send lab results to a HIS (Health Information System). The administrator of the HIS system would need to give you the host or IP address of their HL7 server and the port number that it is listening on.
One final point that confuses many people is how HL7 ACKnowledgment messages should be sent. It is important to understand that when a TCP/IP connection is established, it is a two-way channel of communication. When a client establishes a connection to a server there is one channel on which the client can send data to the server, and another on which the server can send data back to the client. This latter channel should be used to send ACK messages.
Sometimes it is necessary to implement both a client and a server component for your product’s HL7 interface. Avoid the temptation to follow some creative members of the computer community who use the client component to send back all the ACK messages. Your creativity will be someone else’s problem. This certainly happens in the real world, but if you have the choice, make use of the fact that you can use the second channel of communication to send back ACK messages, as this is a much cleaner design.
HL7 messages can be sent over a variety of transport protocols including LLP, FTP, SOAP and SMTP. If you are looking to send and receive HL7 messages, you may need an integration engine that supports data exchange regardless of what specific transport protocols the endpoints are designed to accept.
Developed by iNTERFACEWARE, Iguana is a data integration platform, and the only tool you need to send HL7 data over any transport protocol quickly and reliably. Use Iguana’s pre-built components to configure an LLP client or server for real-time data transfer, use HTTP, read from flat files, or connect to a database. It also has a built-in scripting environment if you need to set up a more complex transport protocol for a custom workflow.
Regardless of the transport protocols you are working with, Iguana enables you to exchange HL7 messages to connect your entire healthcare ecosystem.
Fill out the form and we'll be in touch.