- 12 Nov 2024
- 5 Minutes to read
- Print
- DarkLight
Setting up Receivers & Emitters
- Updated on 12 Nov 2024
- 5 Minutes to read
- Print
- DarkLight
Module Details | |
Modified in Version | 8.15, 8.17 |
Core or Github Module | Core |
Restart Required | No |
Steps Exposed | Yes |
Step Location | HL7 |
Settings Location | Settings are configured and defined for each interface |
Prerequisites |
|
The HL7 Module allows a user to configure Receivers and Emitters for messages. A Receiver performs the process of getting an HL7 message. Receivers can get messages through the File Receiver, a TCP/IP Receiver, or a Flow Receiver. Sending an HL7 message is done by an Emitter. Emitters can be configured as a File Emitter, TCP/IP Emitter, or redirect to another HL7 interface.
Configuring Receivers
After an interface has been created, select the interface and click ADD RECEIVERS. Then, select the desired Receiver to configure. Configured Receivers will appear on the right side of the Interface Dashboard.
File Receiver
The File Receiver will get messages from a disk drive and process the message. A File Receiver will monitor a specific folder path on the drive for any new messages and will pull messages based on a schedule.
Configuration Option | Description |
---|---|
CertHasPassword | Enable if the certificate has a password |
CertPassword | Password for the certificate |
PFXCertificate | Select or drag the pfx certificate to use |
Name | Name of receiver |
Description | Purpose of receiver |
Enabled | Allows for enabling or disabling the individual receiver |
IP Address | The IP address on which this receiver should listen (Leaving this setting blank allows the receiver to listen on any valid IP address for this server). |
Port | The port number for the socket on which this receiver should listen. This must be a valid port for the receiver to initialize and receive messages. |
Connection Retry Timer (Default: 30 seconds) | If the emitter cannot reach the receiver, it will attempt to reconnect every x amount of seconds. |
Override Standard Low Level Message Indicators (Message Framing) | Allows the customization of the special text characters used when a message is complete on TCP/IP connections (must enter characters in Hex notation, 0x0B) |
Keep Connection Open | Determines if the connection to the receiver will be closed and a new one created or an existing connection used. |
Send ACK when processing complete | This tells the HL7 mediator to send an ACK message back to the other system when the message has been successfully parsed. Because the HL7 mediator can assign tasks to humans and do long-running workflow processes, there is no waiting for the message to be fully processed by the mediator before sending back an ACK message. |
Never Close Connection (non standard clients) | Some clients require the server to maintain an open connection after it has been established. This setting can be enabled if the receiver gets a single message and stops receiving it. |
Use File System As a Queue | If the HL7 interface cannot process messages as fast as they are being sent to the interface, enable this option to use the file system as a queue to store messages so that messages are not blocked from getting sent over the TCP/IP connection. |
Always Trim Standard Frame Chars | It tells the parsing engine always to be sure to strip any standard message framing characters from the messages received. |
Flow Receiver
A receiver that utilizes a Flow to receive messages. The configuration for this receiver is similar to a Message Handler or Scheduled Job Flow.
Configuration Option | Description |
---|---|
Name | Name of receiver |
Description | Purpose of receiver |
PICK OR CREATE FLOW FOR MESSAGES | Select or create a Flow to receive messages |
Calendar | Specify how frequently this receiver will look for new messages at the specified location. |
Configuring Emitters
Once a message has been received and processed, it can be sent out using an Emitter. Select ADD EMITTERS and select the desired emitter. Once configured, the emitter will be displayed on the right side of the interface dashboard.
Any ACK message received will be displayed on the interface dashboard if Wait for Ack is enabled.
File Emitter
The File Emitter sends messages to a disk drive. The path to the folder must be defined in the Destination Folder setting.
Configuration Option | Description |
---|---|
Name | Name of emitter |
Description | Purpose of emitter |
Enabled | Allows the ability to enable or disable individual emitters |
Wait for ACK | Runs emitter after ACK has been processed. Enabling this will expose a new setting called "Action On Nack". Users can choose the following actions:
|
Trigger workflow for NACK response | Allows a user to create or pick a Flow when a NACK response is received |
Trigger workflow for StateChanged (v8.5+) | Allows a user to create or pick a Flow when the state/status of the interface/emitter has changed |
Remove Trailing Pipes | Removes trailing pipe characters from the message |
Override Output Version | Allows the emitter to set the version number in the emitted HL7 packet |
Destination Folder | The folder where the emitter will send messages (can be a full local path or UNC path) |
Ack Message Folder | The folder where Ack messages are stored |
TCP/IP and TCP/IP SSL Emitter
For sending messages to a system that supports TCP/IP connections, these can be configured as a TCP/IP or TCP/IP SSL emitter.
TCP/IP Emitter | TCP/IP SSL Emitter |
---|---|
Configuration Option | Description |
---|---|
Name | Name of receiver |
Description | Purpose of receiver |
Enabled | Allows for enabling or disabling the individual receiver |
Wait for ACK | Runs emitter after ACK has been processed. Enabling this will expose a new setting called "Action On Nack". Users can choose the following actions:
|
Trigger workflow for NACK response | Allows a user to create or pick a Flow when a NACK response is received |
Trigger workflow for StateChange | Allows a user to create or pick a Flow when the state/status of the interface/emitter has changed |
Override Output Version | Allows the emitter to set the version number in the emitted HL7 packet |
Remove Trailing Pipes | Removes trailing pipe characters from the message |
IP Address | IP address to which this emitter should talk to |
Remote Host | Remote host to which the emitter should talk to |
Port | The port number for the socket on which this receiver should listen. This must be a valid port for the receiver to initialize and receive messages. |
Ignore Certificate Errors | Ignores any issues directly related to the certificate. |
Connection Retry Timer (Default: 30 seconds) | If the emitter cannot reach the receiver, it will attempt to reconnect every x amount of seconds. |
Override Standard Header and Footers (Hex Framing) | Allows the customization of the special text characters used when a message is complete on TCP/IP connections (must enter characters in Hex notation, 0x0B) |
Keep Connection Open | Determines if the connection to the receiver will be closed and a new one created or an existing connection used. |
Certificate | Only available for TCP/IP SSL Emitter. Upload a certificate for the TCP/IP SSL to use. |
Redirect to HL7 Interface
This emitter sends messages to another HL7 Interface configured in Decisions. The current interface cannot be chosen to receive messages.
Feature Changes
Description | Version | Release | Developer Task |
---|---|---|---|
Add settings for retry connection to match non-SSL Emitters. | 8.15 | October 2023 | [DT-038810] |
HL7 SSL Emitters now have a new property for a certificate in order to send messages. | 8.15 | October 2023 | [DT-039027] |
Added an option to auto-ignore NACK messages | 8.17 | December 2023 | [DT-039534] |