Network connectivity through Corepoint Community Exchange™Exchanging patient data securely with remote point of care applications
Most healthcare HL7 interfacing environments rely on TCP/IP as the communications protocol to transmit messages between systems, with Minimal Lower-layer Protocol (MLP) as the message framing. For systems integrated within a local network, this is a standard solution.
However there is often a need for a system installed at a central location (ASP/SaaS vendors, hospitals, laboratories, etc.) to integrate with one or more systems installed at remote locations. Typical remote connectivity scenarios might include:
- A physician’s Electronic Medical Record (EMR) software needs to provide demographics to a web-based, e-prescribing application at a centrally located pharmacy
- A reference lab needs to accept orders from clinics and return results
- A web-based, home health application needs to receive patient demographics from a practice management application, and then send nursing notes to a point of care application
- A radiology practice needs to accept orders via HL7 (rather than faxes) and return patient reports
Unlike typical interface connections with local machines, remote applications require secure transmission of encrypted data to a central location. Therefore this type of connectivity presents some special security and “industry norm” challenges that must be solved in order for connectivity to be established.
What are the options?
Integration with remote systems can be challenging because the central application does not have a physical server at the remote location. In addition, the remote locations cannot “locally integrate” with the central application because they do not run on local networks or HL7 (custom) interfaces.
To achieve“low impact” integration, the selected approach must match industry norms and historical patterns. For the central application, this means providing an integration touch point within the remote facility. This touch point can be accomplished by extending the central application’s reach through a Virtual Private Network (VPN) or through a lower impact integration agent that is deployed within the remote facility.
The advantage of using a VPN is that the initial cost for a small number of remote sites is low. However, scaling beyond a few dozen remote applications is difficult. The long-term support needed to maintain the network may be high because the central application has to dedicate communication resources at each remote site.
The advantage of using an integration agent is that it can be scaled to hundreds or thousands of remote sites with a lower total cost of ownership. The major disadvantage is that there is software (the lightweight integration agent) running within the remote environment. The key is to have central control and monitoring of the remote agents to ensure a reliable flow of data.
An integrated solution
Corepoint Community Exchange enables secure transmission of messages via web services in tandem with the core functionality of the Corepoint Integration Engine solution. Corepoint Community Exchange connects to remote point of care applications through a lightweight CareAgent™. The CareAgent then transmits the data to the local clinical applications.
Corepoint Community Exchange extends interfacing functionality to locations where security barriers may have prevented normal transmission of messages, or where VPN use has become cumbersome to establish and maintain. The value proposition is very strong for allowing users to access the central application remotely. This type of approach reduces the cost of deployment because only a small physical footprint is required at the remote locations.
Corepoint Community Exchange’s core functionality is based on the use of mailbox queuing to send and receive messages for each remote system. Each mailbox is associated with a connection, and each connection is associated with an application interface at a client’s remote site.
The mailboxes reside at the central server and can be easily configured and monitored through the web-based Corepoint Community Exchange application. Each mailbox shows all messages that were sent to the remote system, providing a single location to view real-time information about a client.
Most of the processing of the messages is done at the central server—not at the remote sites. Corepoint Community Exchange focuses on sorting the processed messages into a designated mailbox, moving the messages from a mailbox to a CareAgent (and vice versa), and monitoring the activity of the mailboxes. Once at the remote site, a separate connection is used to transmit messages between the CareAgent and the client side system.
In a full bi-direction deployment, two separate connections are used by the CareAgent to transmit messages between the Corepoint Community Exchange platform and the clinical application, plus a third connection to transmit CareAgent message statistics.
- One connection transmits incoming messages from the Corepoint Community Exchange mailbox, to the CareAgent, and then on to the clinical application.
- A second connection transmits outgoing messages from the clinical application, to the CareAgent, and then on to the Corepoint Community Exchange mailbox.
- A third connection periodically transmits message statistics from the CareAgent’s log files to the Corepoint Community Exchange server, independently of all other message transmission.
Sending messages securely
Corepoint Community Exchange uses a web service to establish a secure connection between the mailbox and the remote application. Each CareAgent communicates with the Corepoint Community Exchange platform at regular intervals and whenever data is ready to be sent from the client application. The Corepoint Community Exchange mailbox is checked, and any waiting messages are retrieved for delivery back to the remote system.
As part of the transmission process, the message is logged and acknowledged at each stop along the way to ensure that it is received correctly and completely. Meanwhile at the central server, the message can be watched in real-time as it is delivered without the hassle of having to go to the remote system.
Sending messages to the remote site
Outgoing messages generated on the central application are first stored in the appropriate Corepoint Community Exchange mailbox. Then when the remote CareAgent authenticates and checks for messages, messages are delivered to the remote site. The CareAgent then delivers these messages to the remote point of care application.
- Corepoint Community Exchange processes a message from the source application and places it into the appropriate Corepoint Community Exchange mailbox. The message is logged upon receipt in the mailbox and appears in the Corepoint Community Exchange web-based application, where it can be monitored.
- The CareAgent calls in to Corepoint Community Exchange and establishes a secure connection via a web service.
- The CareAgent receives the message from the Corepoint Community Exchange mailbox by utilizing the designated client connection. Logging and acknowledgement of the message also occurs at this time.
- Once received at the remote site, the CareAgent sends the message on to the client side application through a TCP/IP MLP connection.
Receiving messages from the remote site
Incoming messages generated on the remote application are first receiving by the remote CareAgent and safely enqueued at the remote site. The CareAgent then delivers the message to the Corepoint Community Exchange platform via secure web service call.
- The remote clinical application sends a message to the CareAgent through a TCP/IP MLP connection.
- The CareAgent establishes a secure connection with the Corepoint Community Exchange platform via a web service.
- The CareAgent sends the message to the client’s Corepoint Community Exchange mailbox.
- Once received in the Corepoint Community Exchange mailbox, Corepoint Community Exchange logs, acknowledges and processes the message. It is then sent on to the target application.
Centralized monitoring and troubleshooting
Centralized monitoring and troubleshooting for all remote connections is possible because:
- Corepoint Community Exchange message logging and acknowledgement occurs at both the central server and remote sites,
- Remote logging statistics are automatically reported to the central location at periodic intervals, and
- An easy to use, web-based application provides a real-time view of message transmission, history and status for all remote clients.
Transmitting remote statistics
Each CareAgent is configured to “call” into the Corepoint Community Exchange platform periodically with log file statistics, using a separate remote connection designated solely for this purpose. As a result, the log files at the Corepoint Community Exchange server not only contain information about the message as it is processed, but also information about the message as it is put into the mailboxes and sent to the remote locations.
Although the site-specific log files allow each remote client to view information about their connection’s messages and possible issues, troubleshooting for all connections can be done from the central location because the remote sites’ statistics are available at the Corepoint Community Exchange server.
Corepoint Community Exchange web-based application
The Corepoint Community Exchange application allows for easy monitoring of all existing mailboxes and connections, plus quick creation of new clients, connections and mailboxes—all from a central location. The clients available for access are based on login credentials.
Corepoint Community Exchange is easily scalable while maintaining First In First Out (FIFO) order in each message stream. Expansion is achieved by adding some additional processing to the Corepoint Integration Engine at the central server. The Corepoint Community Exchange connections can then collectively leverage existing functionality in the core Corepoint Integration Engine, meanwhile using “mailbox locking” during processing to ensure consistent maintenance of FIFO. This allows for easy addition of new remote clients, and the ability to keep pace with business needs as processing demands increase with the number of remote installations.
About Corepoint Health
Corepoint Health solutions deliver interoperability for healthcare organizations and simplify the complexities of healthcare data through practical software applications, consulting and training. Our innovative and proven software solutions leverage clinical data flow efficiently for a diverse group of healthcare entities including hospitals, imaging centers, laboratories, clinics and healthcare vendors. This next generation approach to healthcare data and streamlined workflow is where Corepoint Health specializes in helping customers discover the power of integration.